diff --git a/.github/comment.yml b/.github/comment.yml index 57779c57ae98a..ddcbd1fca919a 100644 --- a/.github/comment.yml +++ b/.github/comment.yml @@ -12,7 +12,7 @@
  • If this PR is targeting `main` branch, then it cannot be merged, as `azure-rest-api-specs-pr` repo `main` branch is mirrored from `azure-rest-api-specs` `main`` branch.
    - If you want to publish the PR to the public repo (`Azure/azure-rest-api-specs`) `main` branch, + If you want to publish the PR to the public repo (`Azure/azure-rest-api-specs`) `main` branch, please use [OpenAPIHub Publish PR](${openapiHub}/tools/publishpullrequest?pr=${owner}/${repo}/${PRNumber}&to=${to}).
  • For further guidance see [Spec Repos](https://eng.ms/docs/products/azure-developer-experience/design/api-specs-pr/api-repos). @@ -82,7 +82,21 @@ - rule: type: label label: Approved-BreakingChange - booleanFilterExpression: "!(ARMSignedOff||ARMChangesRequested||Approved-OkToMerge||WaitForARMRevisit)&&ARMReview" + booleanFilterExpression: "!(ARMSignedOff||WaitForARMFeedback||ARMChangesRequested||Approved-OkToMerge||WaitForARMRevisit)&&ARMReview" + onLabeledAddLabels: + - WaitForARMFeedback + +- rule: + type: label + label: BreakingChange-Approved-* + booleanFilterExpression: "!(ARMSignedOff||WaitForARMFeedback||ARMChangesRequested||Approved-OkToMerge||WaitForARMRevisit)&&ARMReview" + onLabeledAddLabels: + - WaitForARMFeedback + +- rule: + type: label + label: Versioning-Approved-* + booleanFilterExpression: "!(ARMSignedOff||WaitForARMFeedback||ARMChangesRequested||Approved-OkToMerge||WaitForARMRevisit)&&ARMReview" onLabeledAddLabels: - WaitForARMFeedback diff --git a/cSpell.json b/cSpell.json index 89845c74673f2..cc95afe67740b 100644 --- a/cSpell.json +++ b/cSpell.json @@ -289,6 +289,18 @@ "words": [ "freemium" ] + }, + { + "filename": "**/specification/sql/resource-manager/Microsoft.Sql/preview/2023-02-01-preview/ManagedInstances.json", + "words": [ + "freemium" + ] + }, + { + "filename": "**/specification/sql/resource-manager/Microsoft.Sql/preview/2023-05-01-preview/ManagedInstances.json", + "words": [ + "freemium" + ] }, { "filename": "**/specification/sql/resource-manager/Microsoft.Sql/preview/2023-08-01-preview/ManagedInstances.json", @@ -1037,7 +1049,23 @@ { "filename": "**/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/**/*.json", "words": [ - "Criterias" + "Criterias", + "nwrfc", + "Abap", + "AGRTCODES", + "AGRUSERS", + "AGRPROF", + "ADCP", + "USGRPUSER", + "USERADDR", + "DEVACCESS", + "AGRDEFINE", + "PAHI", + "AGRAGRS", + "USRSTAMP", + "AGRFLAGS", + "SNCSYSACL", + "USRACL" ] }, { @@ -1114,6 +1142,29 @@ "words": [ "headwear" ] + }, + { + "filename": "**/specification/awsconnector/resource-manager/Microsoft.AwsConnector/**/*.json", + "words": [ + "ACUs", + "AWSRDS", + "DCERPC", + "Dsse", + "dsse", + "dualstack", + "ENIs", + "Fargate", + "multimaster", + "nodegroup", + "Nodegroups", + "nondefault", + "ONEZONE", + "parallelquery", + "preconfigures", + "tierings", + "VPC's", + "wihtin" + ] } ], "enableFiletypes": [ diff --git a/specification/ai/DocumentIntelligence/client.tsp b/specification/ai/DocumentIntelligence/client.tsp index 48e2c24bd5416..cbd33da141952 100644 --- a/specification/ai/DocumentIntelligence/client.tsp +++ b/specification/ai/DocumentIntelligence/client.tsp @@ -8,9 +8,8 @@ using Azure.ClientGenerator.Core; using DocumentIntelligence; @TypeSpec.Versioning.useDependency(Azure.Core.Versions.v1_0_Preview_2) -//@TypeSpec.Versioning.useDependency(DocumentIntelligence.Versions.v2023_07_31) @TypeSpec.Versioning.useDependency( - DocumentIntelligence.Versions.v2023_10_31_preview + DocumentIntelligence.Versions.v2024_02_29_preview ) namespace ClientCustomizations; diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/AnalyzeDocument_Base64.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/AnalyzeDocument_Base64.json new file mode 100644 index 0000000000000..c60d635fb722b --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/AnalyzeDocument_Base64.json @@ -0,0 +1,22 @@ +{ + "operationId": "DocumentModels_AnalyzeDocument", + "title": "Analyze Document from Base64", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "prebuilt-layout", + "pages": "1-2,4", + "locale": "en-US", + "stringIndexType": "textElements", + "analyzeRequest": { + "base64Source": "e2Jhc2U2NEVuY29kZWRQZGZ9" + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/prebuilt-layout/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/AnalyzeDocument_Stream.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/AnalyzeDocument_Stream.json new file mode 100644 index 0000000000000..f78b6ca576b04 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/AnalyzeDocument_Stream.json @@ -0,0 +1,20 @@ +{ + "operationId": "DocumentModels_AnalyzeDocumentFromStream", + "title": "Analyze Document from Url", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "customModel", + "pages": "1-2,4", + "locale": "en-US", + "stringIndexType": "textElements", + "input": "{binaryFile}" + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/customModel/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/AnalyzeDocument_Url.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/AnalyzeDocument_Url.json new file mode 100644 index 0000000000000..3ef083f0012aa --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/AnalyzeDocument_Url.json @@ -0,0 +1,22 @@ +{ + "operationId": "DocumentModels_AnalyzeDocument", + "title": "Analyze Document from Url", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "customModel", + "pages": "1-2,4", + "locale": "en-US", + "stringIndexType": "textElements", + "analyzeRequest": { + "urlSource": "http://host.com/doc.pdf" + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/customModel/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/AuthorizeCopyDocumentModel.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/AuthorizeCopyDocumentModel.json new file mode 100644 index 0000000000000..b887dcc9fa194 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/AuthorizeCopyDocumentModel.json @@ -0,0 +1,24 @@ +{ + "operationId": "DocumentModels_AuthorizeModelCopy", + "title": "Authorize Copy of Document Model", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "authorizeCopyRequest": { + "modelId": "targetModel", + "description": "Target model description" + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/targetSub/resourceGroups/targetRG/providers/Microsoft.CognitiveServices/accounts/targetService", + "targetResourceRegion": "targetResourceRegion", + "targetModelId": "targetModel", + "targetModelLocation": "https://targetEndpoint.cognitiveservices.azure.com/documentintelligence/documentModels/targetModel", + "accessToken": "accessToken", + "expirationDateTime": "2021-09-23T09:12:54.552Z" + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/BuildDocumentClassifier.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/BuildDocumentClassifier.json new file mode 100644 index 0000000000000..d61902675c6a5 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/BuildDocumentClassifier.json @@ -0,0 +1,33 @@ +{ + "operationId": "DocumentClassifiers_BuildClassifier", + "title": "Build Document Classifier", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "buildRequest": { + "classifierId": "myClassifier", + "description": "Classifier description", + "docTypes": { + "formA": { + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken", + "prefix": "formADocs/" + } + }, + "formB": { + "azureBlobFileListSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken", + "fileList": "formB.jsonl" + } + } + } + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/BuildDocumentModel.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/BuildDocumentModel.json new file mode 100644 index 0000000000000..c3e813bb17cce --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/BuildDocumentModel.json @@ -0,0 +1,27 @@ +{ + "operationId": "DocumentModels_BuildModel", + "title": "Build Document Model", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "buildRequest": { + "modelId": "myCustomModel", + "description": "Custom model description", + "buildMode": "template", + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken", + "prefix": "trainingDocs/" + }, + "tags": { + "createdBy": "myUserId" + } + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/ClassifyDocument_Stream.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/ClassifyDocument_Stream.json new file mode 100644 index 0000000000000..12c565bc6adfc --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/ClassifyDocument_Stream.json @@ -0,0 +1,18 @@ +{ + "operationId": "DocumentClassifiers_ClassifyDocumentFromStream", + "title": "Classify Document from Url", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "classifierId": "classifierId", + "stringIndexType": "textElements", + "input": "{binaryFile}" + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentClassifiers/customClassifier/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/ClassifyDocument_Url.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/ClassifyDocument_Url.json new file mode 100644 index 0000000000000..bdc7b60b62eff --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/ClassifyDocument_Url.json @@ -0,0 +1,20 @@ +{ + "operationId": "DocumentClassifiers_ClassifyDocument", + "title": "Classify Document from Url", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "classifierId": "classifierId", + "stringIndexType": "textElements", + "classifyRequest": { + "urlSource": "http://host.com/doc.pdf" + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentClassifiers/customClassifier/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/ComposeDocumentModel.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/ComposeDocumentModel.json new file mode 100644 index 0000000000000..fd8b6d4c17ed1 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/ComposeDocumentModel.json @@ -0,0 +1,27 @@ +{ + "operationId": "DocumentModels_ComposeModel", + "title": "Compose Document Model", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "composeRequest": { + "modelId": "composedModel", + "description": "Composed model description", + "componentModels": [ + { + "modelId": "model1" + }, + { + "modelId": "model2" + } + ] + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/CopyDocumentModelTo.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/CopyDocumentModelTo.json new file mode 100644 index 0000000000000..a3f5269b14b42 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/CopyDocumentModelTo.json @@ -0,0 +1,24 @@ +{ + "operationId": "DocumentModels_CopyModelTo", + "title": "Copy Document Model To", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "sourceModel", + "copyToRequest": { + "targetResourceId": "/subscriptions/targetSub/resourceGroups/targetRG/providers/Microsoft.CognitiveServices/accounts/targetService", + "targetResourceRegion": "targetResourceRegion", + "targetModelId": "targetModel", + "targetModelLocation": "https://targetEndpoint.cognitiveservices.azure.com/documentintelligence/documentModels/targetModel", + "accessToken": "accessToken", + "expirationDateTime": "2021-09-23T09:12:54.552Z" + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/DeleteDocumentClassifier.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/DeleteDocumentClassifier.json new file mode 100644 index 0000000000000..5e6f6390d2344 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/DeleteDocumentClassifier.json @@ -0,0 +1,12 @@ +{ + "operationId": "DocumentClassifiers_DeleteClassifier", + "title": "Delete Document Classifier", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "classifierId": "myClassifier" + }, + "responses": { + "204": {} + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/DeleteDocumentModel.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/DeleteDocumentModel.json new file mode 100644 index 0000000000000..b49970cb62c26 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/DeleteDocumentModel.json @@ -0,0 +1,12 @@ +{ + "operationId": "DocumentModels_DeleteModel", + "title": "Delete Document Model", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "myCustomModel" + }, + "responses": { + "204": {} + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetAnalyzeDocumentResult.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetAnalyzeDocumentResult.json new file mode 100644 index 0000000000000..08d8e4910f426 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetAnalyzeDocumentResult.json @@ -0,0 +1,7222 @@ +{ + "operationId": "DocumentModels_GetAnalyzeResult", + "title": "Get Analyze Document Result", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "prebuilt-invoice", + "resultId": "3b31320d-8bab-4f88-b19c-2322a7f11034" + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "createdDateTime": "2021-09-24T13:00:46Z", + "lastUpdatedDateTime": "2021-09-24T13:00:49Z", + "analyzeResult": { + "apiVersion": "2024-02-29-preview", + "modelId": "prebuilt-invoice", + "stringIndexType": "textElements", + "contentFormat": "text", + "content": "CONTOSO LTD.\nINVOICE\nContoso Headquarters\nINVOICE: INV-100\n123 456th St\nINVOICE DATE: 11/15/2019\nNew York, NY, 10001\nDUE DATE: 12/15/2019\nCUSTOMER NAME: MICROSOFT CORPORATION\nSERVICE PERIOD: 10/14/2019 – 11/14/2019\nCUSTOMER ID: CID-12345\nMicrosoft Corp\n123 Other St,\nRedmond WA, 98052\nBILL TO:\nSHIP TO:\nSERVICE ADDRESS:\nMicrosoft Finance\nMicrosoft Delivery\nMicrosoft Services\n123 Bill St,\n123 Ship St,\n123 Service St,\nRedmond WA, 98052\nRedmond WA, 98052\nRedmond WA, 98052\nSALESPERSON\nP.O. NUMBER\nREQUISITIONER\nSHIPPED VIA\nF.O.B. POINT\nTERMS\nPO-3333\nDATE\nITEM CODE\nDESCRIPTION\nQTY\nUM\nPRICE\nTAX\nAMOUNT\n3/4/2021\nA123\nConsulting Services\n2\nhours\n$30.00\n10%\n$60.00\n3/5/2021\nB456\nDocument Fee\n3\n$10.00\n5%\n$30.00\n3/6/2021\nC789\nPrinting Fee\n10\npages\n$1.00\n20%\n$10.00\nSUBTOTAL\n$100.00\nSALES TAX\n$10.00\nTOTAL\n$110.00\nPREVIOUS UNPAID BALANCE\n$500.00\nAMOUNT DUE\n$610.00\nTHANK YOU FOR YOUR BUSINESS!\nREMIT TO:\nContoso Billing\n123 Remit St\nNew York, NY, 10001\n:unselected:", + "pages": [ + { + "pageNumber": 1, + "angle": 0, + "width": 8.5, + "height": 11, + "unit": "inch", + "words": [ + { + "content": "CONTOSO", + "polygon": [ + 0.5911, + 0.6857, + 1.7451, + 0.6857, + 1.7451, + 0.8664, + 0.5911, + 0.8664 + ], + "confidence": 1, + "span": { + "offset": 0, + "length": 7 + } + }, + { + "content": "LTD.", + "polygon": [ + 1.8441, + 0.6879, + 2.3181, + 0.6879, + 2.3181, + 0.865, + 1.8441, + 0.865 + ], + "confidence": 1, + "span": { + "offset": 8, + "length": 4 + } + }, + { + "content": "INVOICE", + "polygon": [ + 7.0751, + 0.589, + 7.9886, + 0.589, + 7.9886, + 0.7697, + 7.0751, + 0.7697 + ], + "confidence": 1, + "span": { + "offset": 13, + "length": 7 + } + }, + { + "content": "Contoso", + "polygon": [ + 0.5882, + 1.4303, + 1.1337, + 1.4303, + 1.1337, + 1.5383, + 0.5882, + 1.5383 + ], + "confidence": 1, + "span": { + "offset": 21, + "length": 7 + } + }, + { + "content": "Headquarters", + "polygon": [ + 1.1905, + 1.4239, + 2.0978, + 1.4239, + 2.0978, + 1.5664, + 1.1905, + 1.5664 + ], + "confidence": 1, + "span": { + "offset": 29, + "length": 12 + } + }, + { + "content": "INVOICE:", + "polygon": [ + 6.8599, + 1.4217, + 7.4328, + 1.4217, + 7.4328, + 1.5218, + 6.8599, + 1.5218 + ], + "confidence": 1, + "span": { + "offset": 42, + "length": 8 + } + }, + { + "content": "INV-100", + "polygon": [ + 7.4959, + 1.422, + 7.9988, + 1.422, + 7.9988, + 1.5215, + 7.4959, + 1.5215 + ], + "confidence": 1, + "span": { + "offset": 51, + "length": 7 + } + }, + { + "content": "123", + "polygon": [ + 0.5945, + 1.6339, + 0.8213, + 1.6339, + 0.8213, + 1.742, + 0.5945, + 1.742 + ], + "confidence": 1, + "span": { + "offset": 59, + "length": 3 + } + }, + { + "content": "456th", + "polygon": [ + 0.874, + 1.6092, + 1.2102, + 1.6092, + 1.2102, + 1.742, + 0.874, + 1.742 + ], + "confidence": 1, + "span": { + "offset": 63, + "length": 5 + } + }, + { + "content": "St", + "polygon": [ + 1.2598, + 1.6339, + 1.3812, + 1.6339, + 1.3812, + 1.742, + 1.2598, + 1.742 + ], + "confidence": 1, + "span": { + "offset": 69, + "length": 2 + } + }, + { + "content": "INVOICE", + "polygon": [ + 6.2263, + 1.6254, + 6.7562, + 1.6254, + 6.7562, + 1.7256, + 6.2263, + 1.7256 + ], + "confidence": 1, + "span": { + "offset": 72, + "length": 7 + } + }, + { + "content": "DATE:", + "polygon": [ + 6.8132, + 1.6267, + 7.1891, + 1.6267, + 7.1891, + 1.7248, + 6.8132, + 1.7248 + ], + "confidence": 1, + "span": { + "offset": 80, + "length": 5 + } + }, + { + "content": "11/15/2019", + "polygon": [ + 7.2528, + 1.6139, + 7.993, + 1.6139, + 7.993, + 1.7449, + 7.2528, + 1.7449 + ], + "confidence": 1, + "span": { + "offset": 86, + "length": 10 + } + }, + { + "content": "New", + "polygon": [ + 0.5943, + 1.8385, + 0.8848, + 1.8385, + 0.8848, + 1.9454, + 0.5943, + 1.9454 + ], + "confidence": 1, + "span": { + "offset": 97, + "length": 3 + } + }, + { + "content": "York,", + "polygon": [ + 0.9293, + 1.8307, + 1.2568, + 1.8307, + 1.2568, + 1.9675, + 0.9293, + 1.9675 + ], + "confidence": 1, + "span": { + "offset": 101, + "length": 5 + } + }, + { + "content": "NY,", + "polygon": [ + 1.3205, + 1.8382, + 1.5242, + 1.8382, + 1.5242, + 1.9675, + 1.3205, + 1.9675 + ], + "confidence": 1, + "span": { + "offset": 107, + "length": 3 + } + }, + { + "content": "10001", + "polygon": [ + 1.5915, + 1.8372, + 1.9894, + 1.8372, + 1.9894, + 1.9454, + 1.5915, + 1.9454 + ], + "confidence": 1, + "span": { + "offset": 111, + "length": 5 + } + }, + { + "content": "DUE", + "polygon": [ + 6.4966, + 1.8333, + 6.7569, + 1.8333, + 6.7569, + 1.9322, + 6.4966, + 1.9322 + ], + "confidence": 1, + "span": { + "offset": 117, + "length": 3 + } + }, + { + "content": "DATE:", + "polygon": [ + 6.8126, + 1.8333, + 7.1846, + 1.8333, + 7.1846, + 1.9315, + 6.8126, + 1.9315 + ], + "confidence": 1, + "span": { + "offset": 121, + "length": 5 + } + }, + { + "content": "12/15/2019", + "polygon": [ + 7.2494, + 1.8206, + 7.993, + 1.8206, + 7.993, + 1.9515, + 7.2494, + 1.9515 + ], + "confidence": 1, + "span": { + "offset": 127, + "length": 10 + } + }, + { + "content": "CUSTOMER", + "polygon": [ + 4.9513, + 2.0388, + 5.6868, + 2.0388, + 5.6868, + 2.1389, + 4.9513, + 2.1389 + ], + "confidence": 1, + "span": { + "offset": 138, + "length": 8 + } + }, + { + "content": "NAME:", + "polygon": [ + 5.7412, + 2.04, + 6.1764, + 2.04, + 6.1764, + 2.1381, + 5.7412, + 2.1381 + ], + "confidence": 1, + "span": { + "offset": 147, + "length": 5 + } + }, + { + "content": "MICROSOFT", + "polygon": [ + 6.2419, + 2.0391, + 6.9981, + 2.0391, + 6.9981, + 2.1386, + 6.2419, + 2.1386 + ], + "confidence": 1, + "span": { + "offset": 153, + "length": 9 + } + }, + { + "content": "CORPORATION", + "polygon": [ + 7.0448, + 2.0391, + 7.9825, + 2.0391, + 7.9825, + 2.1386, + 7.0448, + 2.1386 + ], + "confidence": 1, + "span": { + "offset": 163, + "length": 11 + } + }, + { + "content": "SERVICE", + "polygon": [ + 5.1667, + 2.2421, + 5.6923, + 2.2421, + 5.6923, + 2.3422, + 5.1667, + 2.3422 + ], + "confidence": 1, + "span": { + "offset": 175, + "length": 7 + } + }, + { + "content": "PERIOD:", + "polygon": [ + 5.748, + 2.2421, + 6.2721, + 2.2421, + 6.2721, + 2.3422, + 5.748, + 2.3422 + ], + "confidence": 1, + "span": { + "offset": 183, + "length": 7 + } + }, + { + "content": "10/14/2019", + "polygon": [ + 6.3357, + 2.2306, + 7.0749, + 2.2306, + 7.0749, + 2.3615, + 6.3357, + 2.3615 + ], + "confidence": 1, + "span": { + "offset": 191, + "length": 10 + } + }, + { + "content": "–", + "polygon": [ + 7.122, + 2.2922, + 7.1995, + 2.2922, + 7.1995, + 2.3037, + 7.122, + 2.3037 + ], + "confidence": 1, + "span": { + "offset": 202, + "length": 1 + } + }, + { + "content": "11/14/2019", + "polygon": [ + 7.2528, + 2.2306, + 7.9952, + 2.2306, + 7.9952, + 2.3615, + 7.2528, + 2.3615 + ], + "confidence": 1, + "span": { + "offset": 204, + "length": 10 + } + }, + { + "content": "CUSTOMER", + "polygon": [ + 6.3253, + 2.4488, + 7.0608, + 2.4488, + 7.0608, + 2.5489, + 6.3253, + 2.5489 + ], + "confidence": 1, + "span": { + "offset": 215, + "length": 8 + } + }, + { + "content": "ID:", + "polygon": [ + 7.1153, + 2.45, + 7.2809, + 2.45, + 7.2809, + 2.5481, + 7.1153, + 2.5481 + ], + "confidence": 1, + "span": { + "offset": 224, + "length": 3 + } + }, + { + "content": "CID-12345", + "polygon": [ + 7.3369, + 2.4491, + 7.9951, + 2.4491, + 7.9951, + 2.5486, + 7.3369, + 2.5486 + ], + "confidence": 1, + "span": { + "offset": 228, + "length": 9 + } + }, + { + "content": "Microsoft", + "polygon": [ + 0.5943, + 2.6436, + 1.2303, + 2.6436, + 1.2303, + 2.759, + 0.5943, + 2.759 + ], + "confidence": 1, + "span": { + "offset": 238, + "length": 9 + } + }, + { + "content": "Corp", + "polygon": [ + 1.2808, + 2.651, + 1.586, + 2.651, + 1.586, + 2.7871, + 1.2808, + 2.7871 + ], + "confidence": 1, + "span": { + "offset": 248, + "length": 4 + } + }, + { + "content": "123", + "polygon": [ + 0.5945, + 2.8541, + 0.8213, + 2.8541, + 0.8213, + 2.9623, + 0.5945, + 2.9623 + ], + "confidence": 1, + "span": { + "offset": 253, + "length": 3 + } + }, + { + "content": "Other", + "polygon": [ + 0.875, + 2.8476, + 1.262, + 2.8476, + 1.262, + 2.9623, + 0.875, + 2.9623 + ], + "confidence": 1, + "span": { + "offset": 257, + "length": 5 + } + }, + { + "content": "St,", + "polygon": [ + 1.3058, + 2.8541, + 1.4633, + 2.8541, + 1.4633, + 2.9845, + 1.3058, + 2.9845 + ], + "confidence": 1, + "span": { + "offset": 263, + "length": 3 + } + }, + { + "content": "Redmond", + "polygon": [ + 0.5943, + 3.0513, + 1.2222, + 3.0513, + 1.2222, + 3.1656, + 0.5943, + 3.1656 + ], + "confidence": 1, + "span": { + "offset": 267, + "length": 7 + } + }, + { + "content": "WA,", + "polygon": [ + 1.2753, + 3.0585, + 1.5468, + 3.0585, + 1.5468, + 3.1878, + 1.2753, + 3.1878 + ], + "confidence": 1, + "span": { + "offset": 275, + "length": 3 + } + }, + { + "content": "98052", + "polygon": [ + 1.6033, + 3.0575, + 2.0083, + 3.0575, + 2.0083, + 3.1656, + 1.6033, + 3.1656 + ], + "confidence": 1, + "span": { + "offset": 279, + "length": 5 + } + }, + { + "content": "BILL", + "polygon": [ + 0.5909, + 3.5603, + 0.8438, + 3.5603, + 0.8438, + 3.6579, + 0.5909, + 3.6579 + ], + "confidence": 1, + "span": { + "offset": 285, + "length": 4 + } + }, + { + "content": "TO:", + "polygon": [ + 0.8846, + 3.559, + 1.1032, + 3.559, + 1.1032, + 3.6592, + 0.8846, + 3.6592 + ], + "confidence": 1, + "span": { + "offset": 290, + "length": 3 + } + }, + { + "content": "SHIP", + "polygon": [ + 3.3361, + 3.559, + 3.6278, + 3.559, + 3.6278, + 3.6592, + 3.3361, + 3.6592 + ], + "confidence": 1, + "span": { + "offset": 294, + "length": 4 + } + }, + { + "content": "TO:", + "polygon": [ + 3.6716, + 3.559, + 3.8903, + 3.559, + 3.8903, + 3.6592, + 3.6716, + 3.6592 + ], + "confidence": 1, + "span": { + "offset": 299, + "length": 3 + } + }, + { + "content": "SERVICE", + "polygon": [ + 6.2104, + 3.559, + 6.7361, + 3.559, + 6.7361, + 3.6592, + 6.2104, + 3.6592 + ], + "confidence": 1, + "span": { + "offset": 303, + "length": 7 + } + }, + { + "content": "ADDRESS:", + "polygon": [ + 6.7828, + 3.559, + 7.4232, + 3.559, + 7.4232, + 3.6592, + 6.7828, + 3.6592 + ], + "confidence": 1, + "span": { + "offset": 311, + "length": 8 + } + }, + { + "content": "Microsoft", + "polygon": [ + 0.5943, + 3.7641, + 1.2303, + 3.7641, + 1.2303, + 3.8794, + 0.5943, + 3.8794 + ], + "confidence": 1, + "span": { + "offset": 320, + "length": 9 + } + }, + { + "content": "Finance", + "polygon": [ + 1.287, + 3.7701, + 1.7878, + 3.7701, + 1.7878, + 3.8794, + 1.287, + 3.8794 + ], + "confidence": 1, + "span": { + "offset": 330, + "length": 7 + } + }, + { + "content": "Microsoft", + "polygon": [ + 3.3454, + 3.7641, + 3.9814, + 3.7641, + 3.9814, + 3.8794, + 3.3454, + 3.8794 + ], + "confidence": 1, + "span": { + "offset": 338, + "length": 9 + } + }, + { + "content": "Delivery", + "polygon": [ + 4.0381, + 3.7647, + 4.5762, + 3.7647, + 4.5762, + 3.9076, + 4.0381, + 3.9076 + ], + "confidence": 1, + "span": { + "offset": 348, + "length": 8 + } + }, + { + "content": "Microsoft", + "polygon": [ + 6.2197, + 3.7641, + 6.8557, + 3.7641, + 6.8557, + 3.8794, + 6.2197, + 3.8794 + ], + "confidence": 1, + "span": { + "offset": 357, + "length": 9 + } + }, + { + "content": "Services", + "polygon": [ + 6.9042, + 3.7701, + 7.4427, + 3.7701, + 7.4427, + 3.8794, + 6.9042, + 3.8794 + ], + "confidence": 1, + "span": { + "offset": 367, + "length": 8 + } + }, + { + "content": "123", + "polygon": [ + 0.5945, + 3.9746, + 0.8213, + 3.9746, + 0.8213, + 4.0827, + 0.5945, + 4.0827 + ], + "confidence": 1, + "span": { + "offset": 376, + "length": 3 + } + }, + { + "content": "Bill", + "polygon": [ + 0.8842, + 3.9681, + 1.0657, + 3.9681, + 1.0657, + 4.0817, + 0.8842, + 4.0817 + ], + "confidence": 1, + "span": { + "offset": 380, + "length": 4 + } + }, + { + "content": "St,", + "polygon": [ + 1.1222, + 3.9746, + 1.2765, + 3.9746, + 1.2765, + 4.1049, + 1.1222, + 4.1049 + ], + "confidence": 1, + "span": { + "offset": 385, + "length": 3 + } + }, + { + "content": "123", + "polygon": [ + 3.3456, + 3.9746, + 3.5724, + 3.9746, + 3.5724, + 4.0827, + 3.3456, + 4.0827 + ], + "confidence": 1, + "span": { + "offset": 389, + "length": 3 + } + }, + { + "content": "Ship", + "polygon": [ + 3.6239, + 3.9681, + 3.9042, + 3.9681, + 3.9042, + 4.1109, + 3.6239, + 4.1109 + ], + "confidence": 1, + "span": { + "offset": 393, + "length": 4 + } + }, + { + "content": "St,", + "polygon": [ + 3.9536, + 3.9746, + 4.1111, + 3.9746, + 4.1111, + 4.1049, + 3.9536, + 4.1049 + ], + "confidence": 1, + "span": { + "offset": 398, + "length": 3 + } + }, + { + "content": "123", + "polygon": [ + 6.2199, + 3.9746, + 6.4467, + 3.9746, + 6.4467, + 4.0827, + 6.2199, + 4.0827 + ], + "confidence": 1, + "span": { + "offset": 402, + "length": 3 + } + }, + { + "content": "Service", + "polygon": [ + 6.4985, + 3.9734, + 6.9738, + 3.9734, + 6.9738, + 4.0827, + 6.4985, + 4.0827 + ], + "confidence": 1, + "span": { + "offset": 406, + "length": 7 + } + }, + { + "content": "St,", + "polygon": [ + 7.0246, + 3.9746, + 7.1821, + 3.9746, + 7.1821, + 4.1049, + 7.0246, + 4.1049 + ], + "confidence": 1, + "span": { + "offset": 414, + "length": 3 + } + }, + { + "content": "Redmond", + "polygon": [ + 0.5943, + 4.1717, + 1.2222, + 4.1717, + 1.2222, + 4.2861, + 0.5943, + 4.2861 + ], + "confidence": 1, + "span": { + "offset": 418, + "length": 7 + } + }, + { + "content": "WA,", + "polygon": [ + 1.2753, + 4.1789, + 1.5468, + 4.1789, + 1.5468, + 4.3082, + 1.2753, + 4.3082 + ], + "confidence": 1, + "span": { + "offset": 426, + "length": 3 + } + }, + { + "content": "98052", + "polygon": [ + 1.6033, + 4.1779, + 2.0083, + 4.1779, + 2.0083, + 4.2861, + 1.6033, + 4.2861 + ], + "confidence": 1, + "span": { + "offset": 430, + "length": 5 + } + }, + { + "content": "Redmond", + "polygon": [ + 3.3454, + 4.1717, + 3.9732, + 4.1717, + 3.9732, + 4.2861, + 3.3454, + 4.2861 + ], + "confidence": 1, + "span": { + "offset": 436, + "length": 7 + } + }, + { + "content": "WA,", + "polygon": [ + 4.0264, + 4.1789, + 4.2979, + 4.1789, + 4.2979, + 4.3082, + 4.0264, + 4.3082 + ], + "confidence": 1, + "span": { + "offset": 444, + "length": 3 + } + }, + { + "content": "98052", + "polygon": [ + 4.3544, + 4.1779, + 4.7594, + 4.1779, + 4.7594, + 4.2861, + 4.3544, + 4.2861 + ], + "confidence": 1, + "span": { + "offset": 448, + "length": 5 + } + }, + { + "content": "Redmond", + "polygon": [ + 6.2197, + 4.1717, + 6.8475, + 4.1717, + 6.8475, + 4.2861, + 6.2197, + 4.2861 + ], + "confidence": 1, + "span": { + "offset": 454, + "length": 7 + } + }, + { + "content": "WA,", + "polygon": [ + 6.9007, + 4.1789, + 7.1722, + 4.1789, + 7.1722, + 4.3082, + 6.9007, + 4.3082 + ], + "confidence": 1, + "span": { + "offset": 462, + "length": 3 + } + }, + { + "content": "98052", + "polygon": [ + 7.2287, + 4.1779, + 7.6337, + 4.1779, + 7.6337, + 4.2861, + 7.2287, + 4.2861 + ], + "confidence": 1, + "span": { + "offset": 466, + "length": 5 + } + }, + { + "content": "SALESPERSON", + "polygon": [ + 0.7018, + 4.6528, + 1.6092, + 4.6528, + 1.6092, + 4.7529, + 0.7018, + 4.7529 + ], + "confidence": 1, + "span": { + "offset": 472, + "length": 11 + } + }, + { + "content": "P.O.", + "polygon": [ + 2.1216, + 4.6528, + 2.3788, + 4.6528, + 2.3788, + 4.7529, + 2.1216, + 4.7529 + ], + "confidence": 1, + "span": { + "offset": 484, + "length": 4 + } + }, + { + "content": "NUMBER", + "polygon": [ + 2.4376, + 4.654, + 3.0155, + 4.654, + 3.0155, + 4.7529, + 2.4376, + 4.7529 + ], + "confidence": 1, + "span": { + "offset": 489, + "length": 6 + } + }, + { + "content": "REQUISITIONER", + "polygon": [ + 3.4953, + 4.6528, + 4.5157, + 4.6528, + 4.5157, + 4.7687, + 3.4953, + 4.7687 + ], + "confidence": 1, + "span": { + "offset": 496, + "length": 13 + } + }, + { + "content": "SHIPPED", + "polygon": [ + 4.81, + 4.6528, + 5.362, + 4.6528, + 5.362, + 4.7529, + 4.81, + 4.7529 + ], + "confidence": 1, + "span": { + "offset": 510, + "length": 7 + } + }, + { + "content": "VIA", + "polygon": [ + 5.409, + 4.654, + 5.6317, + 4.654, + 5.6317, + 4.7517, + 5.409, + 4.7517 + ], + "confidence": 1, + "span": { + "offset": 518, + "length": 3 + } + }, + { + "content": "F.O.B.", + "polygon": [ + 5.8696, + 4.6528, + 6.2467, + 4.6528, + 6.2467, + 4.7529, + 5.8696, + 4.7529 + ], + "confidence": 1, + "span": { + "offset": 522, + "length": 6 + } + }, + { + "content": "POINT", + "polygon": [ + 6.3054, + 4.6528, + 6.706, + 4.6528, + 6.706, + 4.7529, + 6.3054, + 4.7529 + ], + "confidence": 1, + "span": { + "offset": 529, + "length": 5 + } + }, + { + "content": "TERMS", + "polygon": [ + 7.1806, + 4.6528, + 7.6304, + 4.6528, + 7.6304, + 4.7529, + 7.1806, + 4.7529 + ], + "confidence": 1, + "span": { + "offset": 535, + "length": 5 + } + }, + { + "content": "PO-3333", + "polygon": [ + 1.9114, + 4.9282, + 2.4718, + 4.9282, + 2.4718, + 5.0363, + 1.9114, + 5.0363 + ], + "confidence": 1, + "span": { + "offset": 541, + "length": 7 + } + }, + { + "content": "DATE", + "polygon": [ + 0.7409, + 5.421, + 1.0744, + 5.421, + 1.0744, + 5.5186, + 0.7409, + 5.5186 + ], + "confidence": 1, + "span": { + "offset": 549, + "length": 4 + } + }, + { + "content": "ITEM", + "polygon": [ + 1.4213, + 5.421, + 1.7338, + 5.421, + 1.7338, + 5.5186, + 1.4213, + 5.5186 + ], + "confidence": 1, + "span": { + "offset": 554, + "length": 4 + } + }, + { + "content": "CODE", + "polygon": [ + 1.7893, + 5.4197, + 2.1407, + 5.4197, + 2.1407, + 5.5199, + 1.7893, + 5.5199 + ], + "confidence": 1, + "span": { + "offset": 559, + "length": 4 + } + }, + { + "content": "DESCRIPTION", + "polygon": [ + 2.8516, + 5.4197, + 3.7134, + 5.4197, + 3.7134, + 5.5199, + 2.8516, + 5.5199 + ], + "confidence": 1, + "span": { + "offset": 564, + "length": 11 + } + }, + { + "content": "QTY", + "polygon": [ + 4.4043, + 5.4197, + 4.6631, + 5.4197, + 4.6631, + 5.5357, + 4.4043, + 5.5357 + ], + "confidence": 1, + "span": { + "offset": 576, + "length": 3 + } + }, + { + "content": "UM", + "polygon": [ + 5.049, + 5.421, + 5.2654, + 5.421, + 5.2654, + 5.5199, + 5.049, + 5.5199 + ], + "confidence": 1, + "span": { + "offset": 580, + "length": 2 + } + }, + { + "content": "PRICE", + "polygon": [ + 5.8563, + 5.4199, + 6.2163, + 5.4199, + 6.2163, + 5.5197, + 5.8563, + 5.5197 + ], + "confidence": 1, + "span": { + "offset": 583, + "length": 5 + } + }, + { + "content": "TAX", + "polygon": [ + 6.7169, + 5.421, + 6.974, + 5.421, + 6.974, + 5.5186, + 6.7169, + 5.5186 + ], + "confidence": 1, + "span": { + "offset": 589, + "length": 3 + } + }, + { + "content": "AMOUNT", + "polygon": [ + 7.2847, + 5.4197, + 7.9039, + 5.4197, + 7.9039, + 5.5199, + 7.2847, + 5.5199 + ], + "confidence": 1, + "span": { + "offset": 593, + "length": 6 + } + }, + { + "content": "3/4/2021", + "polygon": [ + 0.592, + 5.682, + 1.2092, + 5.682, + 1.2092, + 5.8243, + 0.592, + 5.8243 + ], + "confidence": 1, + "span": { + "offset": 600, + "length": 8 + } + }, + { + "content": "A123", + "polygon": [ + 1.6069, + 5.6948, + 1.9417, + 5.6948, + 1.9417, + 5.803, + 1.6069, + 5.803 + ], + "confidence": 1, + "span": { + "offset": 609, + "length": 4 + } + }, + { + "content": "Consulting", + "polygon": [ + 2.3388, + 5.6883, + 3.0438, + 5.6883, + 3.0438, + 5.8312, + 2.3388, + 5.8312 + ], + "confidence": 1, + "span": { + "offset": 614, + "length": 10 + } + }, + { + "content": "Services", + "polygon": [ + 3.0925, + 5.6937, + 3.6278, + 5.6937, + 3.6278, + 5.803, + 3.0925, + 5.803 + ], + "confidence": 1, + "span": { + "offset": 625, + "length": 8 + } + }, + { + "content": "2", + "polygon": [ + 4.5977, + 5.6948, + 4.6635, + 5.6948, + 4.6635, + 5.8017, + 4.5977, + 5.8017 + ], + "confidence": 1, + "span": { + "offset": 634, + "length": 1 + } + }, + { + "content": "hours", + "polygon": [ + 4.8444, + 5.6883, + 5.2071, + 5.6883, + 5.2071, + 5.803, + 4.8444, + 5.803 + ], + "confidence": 1, + "span": { + "offset": 636, + "length": 5 + } + }, + { + "content": "$30.00", + "polygon": [ + 5.9669, + 5.6777, + 6.4142, + 5.6777, + 6.4142, + 5.8215, + 5.9669, + 5.8215 + ], + "confidence": 1, + "span": { + "offset": 642, + "length": 6 + } + }, + { + "content": "10%", + "polygon": [ + 6.7168, + 5.6932, + 6.9826, + 5.6932, + 6.9826, + 5.8045, + 6.7168, + 5.8045 + ], + "confidence": 1, + "span": { + "offset": 649, + "length": 3 + } + }, + { + "content": "$60.00", + "polygon": [ + 7.4642, + 5.6777, + 7.9116, + 5.6777, + 7.9116, + 5.8215, + 7.4642, + 5.8215 + ], + "confidence": 1, + "span": { + "offset": 653, + "length": 6 + } + }, + { + "content": "3/5/2021", + "polygon": [ + 0.592, + 5.9787, + 1.2088, + 5.9787, + 1.2088, + 6.121, + 0.592, + 6.121 + ], + "confidence": 1, + "span": { + "offset": 660, + "length": 8 + } + }, + { + "content": "B456", + "polygon": [ + 1.6214, + 5.9915, + 1.9419, + 5.9915, + 1.9419, + 6.0997, + 1.6214, + 6.0997 + ], + "confidence": 1, + "span": { + "offset": 669, + "length": 4 + } + }, + { + "content": "Document", + "polygon": [ + 2.345, + 5.993, + 3.0318, + 5.993, + 3.0318, + 6.0997, + 2.345, + 6.0997 + ], + "confidence": 1, + "span": { + "offset": 674, + "length": 8 + } + }, + { + "content": "Fee", + "polygon": [ + 3.0887, + 5.993, + 3.3096, + 5.993, + 3.3096, + 6.0997, + 3.0887, + 6.0997 + ], + "confidence": 1, + "span": { + "offset": 683, + "length": 3 + } + }, + { + "content": "3", + "polygon": [ + 4.5967, + 5.9915, + 4.6627, + 5.9915, + 4.6627, + 6.0997, + 4.5967, + 6.0997 + ], + "confidence": 1, + "span": { + "offset": 687, + "length": 1 + } + }, + { + "content": "$10.00", + "polygon": [ + 5.9669, + 5.9743, + 6.4142, + 5.9743, + 6.4142, + 6.1182, + 5.9669, + 6.1182 + ], + "confidence": 1, + "span": { + "offset": 689, + "length": 6 + } + }, + { + "content": "5%", + "polygon": [ + 6.7508, + 5.9898, + 6.9393, + 5.9898, + 6.9393, + 6.1012, + 6.7508, + 6.1012 + ], + "confidence": 1, + "span": { + "offset": 696, + "length": 2 + } + }, + { + "content": "$30.00", + "polygon": [ + 7.4642, + 5.9743, + 7.9116, + 5.9743, + 7.9116, + 6.1182, + 7.4642, + 6.1182 + ], + "confidence": 1, + "span": { + "offset": 699, + "length": 6 + } + }, + { + "content": "3/6/2021", + "polygon": [ + 0.592, + 6.2789, + 1.2088, + 6.2789, + 1.2088, + 6.4213, + 0.592, + 6.4213 + ], + "confidence": 1, + "span": { + "offset": 706, + "length": 8 + } + }, + { + "content": "C789", + "polygon": [ + 1.6152, + 6.2918, + 1.94, + 6.2918, + 1.94, + 6.3999, + 1.6152, + 6.3999 + ], + "confidence": 1, + "span": { + "offset": 715, + "length": 4 + } + }, + { + "content": "Printing", + "polygon": [ + 2.345, + 6.2906, + 2.8575, + 6.2906, + 2.8575, + 6.4281, + 2.345, + 6.4281 + ], + "confidence": 1, + "span": { + "offset": 720, + "length": 8 + } + }, + { + "content": "Fee", + "polygon": [ + 2.9143, + 6.2933, + 3.1351, + 6.2933, + 3.1351, + 6.3999, + 2.9143, + 6.3999 + ], + "confidence": 1, + "span": { + "offset": 729, + "length": 3 + } + }, + { + "content": "10", + "polygon": [ + 4.5158, + 6.2918, + 4.6637, + 6.2918, + 4.6637, + 6.3999, + 4.5158, + 6.3999 + ], + "confidence": 1, + "span": { + "offset": 733, + "length": 2 + } + }, + { + "content": "pages", + "polygon": [ + 4.8444, + 6.3196, + 5.2199, + 6.3196, + 5.2199, + 6.4281, + 4.8444, + 6.4281 + ], + "confidence": 1, + "span": { + "offset": 736, + "length": 5 + } + }, + { + "content": "$1.00", + "polygon": [ + 6.0502, + 6.2746, + 6.4142, + 6.2746, + 6.4142, + 6.4184, + 6.0502, + 6.4184 + ], + "confidence": 1, + "span": { + "offset": 742, + "length": 5 + } + }, + { + "content": "20%", + "polygon": [ + 6.712, + 6.2901, + 6.9826, + 6.2901, + 6.9826, + 6.4014, + 6.712, + 6.4014 + ], + "confidence": 1, + "span": { + "offset": 748, + "length": 3 + } + }, + { + "content": "$10.00", + "polygon": [ + 7.4642, + 6.2746, + 7.9116, + 6.2746, + 7.9116, + 6.4184, + 7.4642, + 6.4184 + ], + "confidence": 1, + "span": { + "offset": 752, + "length": 6 + } + }, + { + "content": "SUBTOTAL", + "polygon": [ + 6.0282, + 6.9118, + 6.7309, + 6.9118, + 6.7309, + 7.0199, + 6.0282, + 7.0199 + ], + "confidence": 1, + "span": { + "offset": 759, + "length": 8 + } + }, + { + "content": "$100.00", + "polygon": [ + 7.3842, + 6.8679, + 7.9181, + 6.8679, + 7.9181, + 7.0118, + 7.3842, + 7.0118 + ], + "confidence": 1, + "span": { + "offset": 768, + "length": 7 + } + }, + { + "content": "SALES", + "polygon": [ + 6.0382, + 7.2089, + 6.4262, + 7.2089, + 6.4262, + 7.317, + 6.0382, + 7.317 + ], + "confidence": 1, + "span": { + "offset": 776, + "length": 5 + } + }, + { + "content": "TAX", + "polygon": [ + 6.4702, + 7.2099, + 6.728, + 7.2099, + 6.728, + 7.316, + 6.4702, + 7.316 + ], + "confidence": 1, + "span": { + "offset": 782, + "length": 3 + } + }, + { + "content": "$10.00", + "polygon": [ + 7.4709, + 7.165, + 7.9182, + 7.165, + 7.9182, + 7.3089, + 7.4709, + 7.3089 + ], + "confidence": 1, + "span": { + "offset": 786, + "length": 6 + } + }, + { + "content": "TOTAL", + "polygon": [ + 6.2969, + 7.5089, + 6.7309, + 7.5089, + 6.7309, + 7.617, + 6.2969, + 7.617 + ], + "confidence": 1, + "span": { + "offset": 793, + "length": 5 + } + }, + { + "content": "$110.00", + "polygon": [ + 7.3842, + 7.465, + 7.9181, + 7.465, + 7.9181, + 7.6089, + 7.3842, + 7.6089 + ], + "confidence": 1, + "span": { + "offset": 799, + "length": 7 + } + }, + { + "content": "PREVIOUS", + "polygon": [ + 4.8126, + 7.8055, + 5.4789, + 7.8055, + 5.4789, + 7.9137, + 4.8126, + 7.9137 + ], + "confidence": 1, + "span": { + "offset": 807, + "length": 8 + } + }, + { + "content": "UNPAID", + "polygon": [ + 5.5362, + 7.8065, + 6.057, + 7.8065, + 6.057, + 7.9137, + 5.5362, + 7.9137 + ], + "confidence": 1, + "span": { + "offset": 816, + "length": 6 + } + }, + { + "content": "BALANCE", + "polygon": [ + 6.1164, + 7.8057, + 6.7249, + 7.8057, + 6.7249, + 7.9135, + 6.1164, + 7.9135 + ], + "confidence": 1, + "span": { + "offset": 823, + "length": 7 + } + }, + { + "content": "$500.00", + "polygon": [ + 7.3842, + 7.7617, + 7.9181, + 7.7617, + 7.9181, + 7.9055, + 7.3842, + 7.9055 + ], + "confidence": 1, + "span": { + "offset": 831, + "length": 7 + } + }, + { + "content": "AMOUNT", + "polygon": [ + 5.7652, + 8.1022, + 6.4055, + 8.1022, + 6.4055, + 8.2104, + 5.7652, + 8.2104 + ], + "confidence": 1, + "span": { + "offset": 839, + "length": 6 + } + }, + { + "content": "DUE", + "polygon": [ + 6.4562, + 8.1032, + 6.725, + 8.1032, + 6.725, + 8.2104, + 6.4562, + 8.2104 + ], + "confidence": 1, + "span": { + "offset": 846, + "length": 3 + } + }, + { + "content": "$610.00", + "polygon": [ + 7.3842, + 8.0584, + 7.9181, + 8.0584, + 7.9181, + 8.2022, + 7.3842, + 8.2022 + ], + "confidence": 1, + "span": { + "offset": 850, + "length": 7 + } + }, + { + "content": "THANK", + "polygon": [ + 3.129, + 8.5453, + 3.5887, + 8.5453, + 3.5887, + 8.6429, + 3.129, + 8.6429 + ], + "confidence": 1, + "span": { + "offset": 858, + "length": 5 + } + }, + { + "content": "YOU", + "polygon": [ + 3.6316, + 8.544, + 3.9064, + 8.544, + 3.9064, + 8.6442, + 3.6316, + 8.6442 + ], + "confidence": 1, + "span": { + "offset": 864, + "length": 3 + } + }, + { + "content": "FOR", + "polygon": [ + 3.9671, + 8.544, + 4.2187, + 8.544, + 4.2187, + 8.6442, + 3.9671, + 8.6442 + ], + "confidence": 1, + "span": { + "offset": 868, + "length": 3 + } + }, + { + "content": "YOUR", + "polygon": [ + 4.2638, + 8.544, + 4.6347, + 8.544, + 4.6347, + 8.6442, + 4.2638, + 8.6442 + ], + "confidence": 1, + "span": { + "offset": 872, + "length": 4 + } + }, + { + "content": "BUSINESS!", + "polygon": [ + 4.6859, + 8.539, + 5.356, + 8.539, + 5.356, + 8.6442, + 4.6859, + 8.6442 + ], + "confidence": 1, + "span": { + "offset": 877, + "length": 9 + } + }, + { + "content": "REMIT", + "polygon": [ + 0.5909, + 9.1619, + 1.0014, + 9.1619, + 1.0014, + 9.2596, + 0.5909, + 9.2596 + ], + "confidence": 1, + "span": { + "offset": 887, + "length": 5 + } + }, + { + "content": "TO:", + "polygon": [ + 1.0446, + 9.1607, + 1.2603, + 9.1607, + 1.2603, + 9.2608, + 1.0446, + 9.2608 + ], + "confidence": 1, + "span": { + "offset": 893, + "length": 3 + } + }, + { + "content": "Contoso", + "polygon": [ + 0.5882, + 9.3697, + 1.1337, + 9.3697, + 1.1337, + 9.4777, + 0.5882, + 9.4777 + ], + "confidence": 1, + "span": { + "offset": 897, + "length": 7 + } + }, + { + "content": "Billing", + "polygon": [ + 1.1905, + 9.3631, + 1.5828, + 9.3631, + 1.5828, + 9.5059, + 1.1905, + 9.5059 + ], + "confidence": 1, + "span": { + "offset": 905, + "length": 7 + } + }, + { + "content": "123", + "polygon": [ + 0.5945, + 9.5728, + 0.8213, + 9.5728, + 0.8213, + 9.681, + 0.5945, + 9.681 + ], + "confidence": 1, + "span": { + "offset": 913, + "length": 3 + } + }, + { + "content": "Remit", + "polygon": [ + 0.881, + 9.5717, + 1.264, + 9.5717, + 1.264, + 9.681, + 0.881, + 9.681 + ], + "confidence": 1, + "span": { + "offset": 917, + "length": 5 + } + }, + { + "content": "St", + "polygon": [ + 1.3125, + 9.5728, + 1.4337, + 9.5728, + 1.4337, + 9.681, + 1.3125, + 9.681 + ], + "confidence": 1, + "span": { + "offset": 923, + "length": 2 + } + }, + { + "content": "New", + "polygon": [ + 0.5943, + 9.7808, + 0.8848, + 9.7808, + 0.8848, + 9.8877, + 0.5943, + 9.8877 + ], + "confidence": 1, + "span": { + "offset": 926, + "length": 3 + } + }, + { + "content": "York,", + "polygon": [ + 0.9293, + 9.773, + 1.2568, + 9.773, + 1.2568, + 9.9098, + 0.9293, + 9.9098 + ], + "confidence": 1, + "span": { + "offset": 930, + "length": 5 + } + }, + { + "content": "NY,", + "polygon": [ + 1.3205, + 9.7805, + 1.5233, + 9.7805, + 1.5233, + 9.9098, + 1.3205, + 9.9098 + ], + "confidence": 1, + "span": { + "offset": 936, + "length": 3 + } + }, + { + "content": "10001", + "polygon": [ + 1.5903, + 9.7795, + 1.9882, + 9.7795, + 1.9882, + 9.8877, + 1.5903, + 9.8877 + ], + "confidence": 1, + "span": { + "offset": 940, + "length": 5 + } + } + ], + "selectionMarks": [ + { + "state": "unselected", + "polygon": [ + 4.3231, + 5.6279, + 4.7562, + 5.6279, + 4.7562, + 5.8654, + 4.3231, + 5.8654 + ], + "confidence": 0.212, + "span": { + "offset": 946, + "length": 12 + } + } + ], + "lines": [ + { + "content": "CONTOSO LTD.", + "polygon": [ + 0.5911, + 0.6857, + 2.3181, + 0.6857, + 2.3181, + 0.8664, + 0.5911, + 0.8664 + ], + "spans": [ + { + "offset": 0, + "length": 12 + } + ] + }, + { + "content": "INVOICE", + "polygon": [ + 7.0751, + 0.589, + 7.9886, + 0.589, + 7.9886, + 0.7697, + 7.0751, + 0.7697 + ], + "spans": [ + { + "offset": 13, + "length": 7 + } + ] + }, + { + "content": "Contoso Headquarters", + "polygon": [ + 0.5882, + 1.4239, + 2.0978, + 1.4239, + 2.0978, + 1.5664, + 0.5882, + 1.5664 + ], + "spans": [ + { + "offset": 21, + "length": 20 + } + ] + }, + { + "content": "INVOICE: INV-100", + "polygon": [ + 6.8599, + 1.4217, + 7.9988, + 1.4217, + 7.9988, + 1.5218, + 6.8599, + 1.5218 + ], + "spans": [ + { + "offset": 42, + "length": 16 + } + ] + }, + { + "content": "123 456th St", + "polygon": [ + 0.5945, + 1.6092, + 1.3812, + 1.6092, + 1.3812, + 1.742, + 0.5945, + 1.742 + ], + "spans": [ + { + "offset": 59, + "length": 12 + } + ] + }, + { + "content": "INVOICE DATE: 11/15/2019", + "polygon": [ + 6.2263, + 1.6139, + 7.993, + 1.6139, + 7.993, + 1.7449, + 6.2263, + 1.7449 + ], + "spans": [ + { + "offset": 72, + "length": 24 + } + ] + }, + { + "content": "New York, NY, 10001", + "polygon": [ + 0.5943, + 1.8307, + 1.9894, + 1.8307, + 1.9894, + 1.9675, + 0.5943, + 1.9675 + ], + "spans": [ + { + "offset": 97, + "length": 19 + } + ] + }, + { + "content": "DUE DATE: 12/15/2019", + "polygon": [ + 6.4966, + 1.8206, + 7.993, + 1.8206, + 7.993, + 1.9515, + 6.4966, + 1.9515 + ], + "spans": [ + { + "offset": 117, + "length": 20 + } + ] + }, + { + "content": "CUSTOMER NAME: MICROSOFT CORPORATION", + "polygon": [ + 4.9513, + 2.0388, + 7.9825, + 2.0388, + 7.9825, + 2.1389, + 4.9513, + 2.1389 + ], + "spans": [ + { + "offset": 138, + "length": 36 + } + ] + }, + { + "content": "SERVICE PERIOD: 10/14/2019 – 11/14/2019", + "polygon": [ + 5.1667, + 2.2306, + 7.9952, + 2.2306, + 7.9952, + 2.3615, + 5.1667, + 2.3615 + ], + "spans": [ + { + "offset": 175, + "length": 39 + } + ] + }, + { + "content": "CUSTOMER ID: CID-12345", + "polygon": [ + 6.3253, + 2.4488, + 7.9951, + 2.4488, + 7.9951, + 2.5489, + 6.3253, + 2.5489 + ], + "spans": [ + { + "offset": 215, + "length": 22 + } + ] + }, + { + "content": "Microsoft Corp", + "polygon": [ + 0.5943, + 2.6436, + 1.586, + 2.6436, + 1.586, + 2.7871, + 0.5943, + 2.7871 + ], + "spans": [ + { + "offset": 238, + "length": 14 + } + ] + }, + { + "content": "123 Other St,", + "polygon": [ + 0.5945, + 2.8476, + 1.4633, + 2.8476, + 1.4633, + 2.9845, + 0.5945, + 2.9845 + ], + "spans": [ + { + "offset": 253, + "length": 13 + } + ] + }, + { + "content": "Redmond WA, 98052", + "polygon": [ + 0.5943, + 3.0513, + 2.0083, + 3.0513, + 2.0083, + 3.1878, + 0.5943, + 3.1878 + ], + "spans": [ + { + "offset": 267, + "length": 17 + } + ] + }, + { + "content": "BILL TO:", + "polygon": [ + 0.5909, + 3.559, + 1.1032, + 3.559, + 1.1032, + 3.6592, + 0.5909, + 3.6592 + ], + "spans": [ + { + "offset": 285, + "length": 8 + } + ] + }, + { + "content": "SHIP TO:", + "polygon": [ + 3.3361, + 3.559, + 3.8903, + 3.559, + 3.8903, + 3.6592, + 3.3361, + 3.6592 + ], + "spans": [ + { + "offset": 294, + "length": 8 + } + ] + }, + { + "content": "SERVICE ADDRESS:", + "polygon": [ + 6.2104, + 3.559, + 7.4232, + 3.559, + 7.4232, + 3.6592, + 6.2104, + 3.6592 + ], + "spans": [ + { + "offset": 303, + "length": 16 + } + ] + }, + { + "content": "Microsoft Finance", + "polygon": [ + 0.5943, + 3.7641, + 1.7878, + 3.7641, + 1.7878, + 3.8794, + 0.5943, + 3.8794 + ], + "spans": [ + { + "offset": 320, + "length": 17 + } + ] + }, + { + "content": "Microsoft Delivery", + "polygon": [ + 3.3454, + 3.7641, + 4.5762, + 3.7641, + 4.5762, + 3.9076, + 3.3454, + 3.9076 + ], + "spans": [ + { + "offset": 338, + "length": 18 + } + ] + }, + { + "content": "Microsoft Services", + "polygon": [ + 6.2197, + 3.7641, + 7.4427, + 3.7641, + 7.4427, + 3.8794, + 6.2197, + 3.8794 + ], + "spans": [ + { + "offset": 357, + "length": 18 + } + ] + }, + { + "content": "123 Bill St,", + "polygon": [ + 0.5945, + 3.9681, + 1.2765, + 3.9681, + 1.2765, + 4.1049, + 0.5945, + 4.1049 + ], + "spans": [ + { + "offset": 376, + "length": 12 + } + ] + }, + { + "content": "123 Ship St,", + "polygon": [ + 3.3456, + 3.9681, + 4.1111, + 3.9681, + 4.1111, + 4.1109, + 3.3456, + 4.1109 + ], + "spans": [ + { + "offset": 389, + "length": 12 + } + ] + }, + { + "content": "123 Service St,", + "polygon": [ + 6.2199, + 3.9734, + 7.1821, + 3.9734, + 7.1821, + 4.1049, + 6.2199, + 4.1049 + ], + "spans": [ + { + "offset": 402, + "length": 15 + } + ] + }, + { + "content": "Redmond WA, 98052", + "polygon": [ + 0.5943, + 4.1717, + 2.0083, + 4.1717, + 2.0083, + 4.3082, + 0.5943, + 4.3082 + ], + "spans": [ + { + "offset": 418, + "length": 17 + } + ] + }, + { + "content": "Redmond WA, 98052", + "polygon": [ + 3.3454, + 4.1717, + 4.7594, + 4.1717, + 4.7594, + 4.3082, + 3.3454, + 4.3082 + ], + "spans": [ + { + "offset": 436, + "length": 17 + } + ] + }, + { + "content": "Redmond WA, 98052", + "polygon": [ + 6.2197, + 4.1717, + 7.6337, + 4.1717, + 7.6337, + 4.3082, + 6.2197, + 4.3082 + ], + "spans": [ + { + "offset": 454, + "length": 17 + } + ] + }, + { + "content": "SALESPERSON", + "polygon": [ + 0.7018, + 4.6528, + 1.6092, + 4.6528, + 1.6092, + 4.7529, + 0.7018, + 4.7529 + ], + "spans": [ + { + "offset": 472, + "length": 11 + } + ] + }, + { + "content": "P.O. NUMBER", + "polygon": [ + 2.1216, + 4.6528, + 3.0155, + 4.6528, + 3.0155, + 4.7529, + 2.1216, + 4.7529 + ], + "spans": [ + { + "offset": 484, + "length": 11 + } + ] + }, + { + "content": "REQUISITIONER", + "polygon": [ + 3.4953, + 4.6528, + 4.5157, + 4.6528, + 4.5157, + 4.7687, + 3.4953, + 4.7687 + ], + "spans": [ + { + "offset": 496, + "length": 13 + } + ] + }, + { + "content": "SHIPPED VIA", + "polygon": [ + 4.81, + 4.6528, + 5.6317, + 4.6528, + 5.6317, + 4.7529, + 4.81, + 4.7529 + ], + "spans": [ + { + "offset": 510, + "length": 11 + } + ] + }, + { + "content": "F.O.B. POINT", + "polygon": [ + 5.8696, + 4.6528, + 6.706, + 4.6528, + 6.706, + 4.7529, + 5.8696, + 4.7529 + ], + "spans": [ + { + "offset": 522, + "length": 12 + } + ] + }, + { + "content": "TERMS", + "polygon": [ + 7.1806, + 4.6528, + 7.6304, + 4.6528, + 7.6304, + 4.7529, + 7.1806, + 4.7529 + ], + "spans": [ + { + "offset": 535, + "length": 5 + } + ] + }, + { + "content": "PO-3333", + "polygon": [ + 1.9114, + 4.9282, + 2.4718, + 4.9282, + 2.4718, + 5.0363, + 1.9114, + 5.0363 + ], + "spans": [ + { + "offset": 541, + "length": 7 + } + ] + }, + { + "content": "DATE", + "polygon": [ + 0.7409, + 5.421, + 1.0744, + 5.421, + 1.0744, + 5.5186, + 0.7409, + 5.5186 + ], + "spans": [ + { + "offset": 549, + "length": 4 + } + ] + }, + { + "content": "ITEM CODE", + "polygon": [ + 1.4213, + 5.4197, + 2.1407, + 5.4197, + 2.1407, + 5.5199, + 1.4213, + 5.5199 + ], + "spans": [ + { + "offset": 554, + "length": 9 + } + ] + }, + { + "content": "DESCRIPTION", + "polygon": [ + 2.8516, + 5.4197, + 3.7134, + 5.4197, + 3.7134, + 5.5199, + 2.8516, + 5.5199 + ], + "spans": [ + { + "offset": 564, + "length": 11 + } + ] + }, + { + "content": "QTY", + "polygon": [ + 4.4043, + 5.4197, + 4.6631, + 5.4197, + 4.6631, + 5.5357, + 4.4043, + 5.5357 + ], + "spans": [ + { + "offset": 576, + "length": 3 + } + ] + }, + { + "content": "UM", + "polygon": [ + 5.049, + 5.421, + 5.2654, + 5.421, + 5.2654, + 5.5199, + 5.049, + 5.5199 + ], + "spans": [ + { + "offset": 580, + "length": 2 + } + ] + }, + { + "content": "PRICE", + "polygon": [ + 5.8563, + 5.4199, + 6.2163, + 5.4199, + 6.2163, + 5.5197, + 5.8563, + 5.5197 + ], + "spans": [ + { + "offset": 583, + "length": 5 + } + ] + }, + { + "content": "TAX", + "polygon": [ + 6.7169, + 5.421, + 6.974, + 5.421, + 6.974, + 5.5186, + 6.7169, + 5.5186 + ], + "spans": [ + { + "offset": 589, + "length": 3 + } + ] + }, + { + "content": "AMOUNT", + "polygon": [ + 7.2847, + 5.4197, + 7.9039, + 5.4197, + 7.9039, + 5.5199, + 7.2847, + 5.5199 + ], + "spans": [ + { + "offset": 593, + "length": 6 + } + ] + }, + { + "content": "3/4/2021", + "polygon": [ + 0.592, + 5.682, + 1.2092, + 5.682, + 1.2092, + 5.8243, + 0.592, + 5.8243 + ], + "spans": [ + { + "offset": 600, + "length": 8 + } + ] + }, + { + "content": "A123", + "polygon": [ + 1.6069, + 5.6948, + 1.9417, + 5.6948, + 1.9417, + 5.803, + 1.6069, + 5.803 + ], + "spans": [ + { + "offset": 609, + "length": 4 + } + ] + }, + { + "content": "Consulting Services", + "polygon": [ + 2.3388, + 5.6883, + 3.6278, + 5.6883, + 3.6278, + 5.8312, + 2.3388, + 5.8312 + ], + "spans": [ + { + "offset": 614, + "length": 19 + } + ] + }, + { + "content": "2", + "polygon": [ + 4.5977, + 5.6948, + 4.6635, + 5.6948, + 4.6635, + 5.8017, + 4.5977, + 5.8017 + ], + "spans": [ + { + "offset": 634, + "length": 1 + } + ] + }, + { + "content": "hours", + "polygon": [ + 4.8444, + 5.6883, + 5.2071, + 5.6883, + 5.2071, + 5.803, + 4.8444, + 5.803 + ], + "spans": [ + { + "offset": 636, + "length": 5 + } + ] + }, + { + "content": "$30.00", + "polygon": [ + 5.9669, + 5.6777, + 6.4142, + 5.6777, + 6.4142, + 5.8215, + 5.9669, + 5.8215 + ], + "spans": [ + { + "offset": 642, + "length": 6 + } + ] + }, + { + "content": "10%", + "polygon": [ + 6.7168, + 5.6932, + 6.9826, + 5.6932, + 6.9826, + 5.8045, + 6.7168, + 5.8045 + ], + "spans": [ + { + "offset": 649, + "length": 3 + } + ] + }, + { + "content": "$60.00", + "polygon": [ + 7.4642, + 5.6777, + 7.9116, + 5.6777, + 7.9116, + 5.8215, + 7.4642, + 5.8215 + ], + "spans": [ + { + "offset": 653, + "length": 6 + } + ] + }, + { + "content": "3/5/2021", + "polygon": [ + 0.592, + 5.9787, + 1.2088, + 5.9787, + 1.2088, + 6.121, + 0.592, + 6.121 + ], + "spans": [ + { + "offset": 660, + "length": 8 + } + ] + }, + { + "content": "B456", + "polygon": [ + 1.6214, + 5.9915, + 1.9419, + 5.9915, + 1.9419, + 6.0997, + 1.6214, + 6.0997 + ], + "spans": [ + { + "offset": 669, + "length": 4 + } + ] + }, + { + "content": "Document Fee", + "polygon": [ + 2.345, + 5.993, + 3.3096, + 5.993, + 3.3096, + 6.0997, + 2.345, + 6.0997 + ], + "spans": [ + { + "offset": 674, + "length": 12 + } + ] + }, + { + "content": "3", + "polygon": [ + 4.5967, + 5.9915, + 4.6627, + 5.9915, + 4.6627, + 6.0997, + 4.5967, + 6.0997 + ], + "spans": [ + { + "offset": 687, + "length": 1 + } + ] + }, + { + "content": "$10.00", + "polygon": [ + 5.9669, + 5.9743, + 6.4142, + 5.9743, + 6.4142, + 6.1182, + 5.9669, + 6.1182 + ], + "spans": [ + { + "offset": 689, + "length": 6 + } + ] + }, + { + "content": "5%", + "polygon": [ + 6.7508, + 5.9898, + 6.9393, + 5.9898, + 6.9393, + 6.1012, + 6.7508, + 6.1012 + ], + "spans": [ + { + "offset": 696, + "length": 2 + } + ] + }, + { + "content": "$30.00", + "polygon": [ + 7.4642, + 5.9743, + 7.9116, + 5.9743, + 7.9116, + 6.1182, + 7.4642, + 6.1182 + ], + "spans": [ + { + "offset": 699, + "length": 6 + } + ] + }, + { + "content": "3/6/2021", + "polygon": [ + 0.592, + 6.2789, + 1.2088, + 6.2789, + 1.2088, + 6.4213, + 0.592, + 6.4213 + ], + "spans": [ + { + "offset": 706, + "length": 8 + } + ] + }, + { + "content": "C789", + "polygon": [ + 1.6152, + 6.2918, + 1.94, + 6.2918, + 1.94, + 6.3999, + 1.6152, + 6.3999 + ], + "spans": [ + { + "offset": 715, + "length": 4 + } + ] + }, + { + "content": "Printing Fee", + "polygon": [ + 2.345, + 6.2906, + 3.1351, + 6.2906, + 3.1351, + 6.4281, + 2.345, + 6.4281 + ], + "spans": [ + { + "offset": 720, + "length": 12 + } + ] + }, + { + "content": "10", + "polygon": [ + 4.5158, + 6.2918, + 4.6637, + 6.2918, + 4.6637, + 6.3999, + 4.5158, + 6.3999 + ], + "spans": [ + { + "offset": 733, + "length": 2 + } + ] + }, + { + "content": "pages", + "polygon": [ + 4.8444, + 6.3196, + 5.2199, + 6.3196, + 5.2199, + 6.4281, + 4.8444, + 6.4281 + ], + "spans": [ + { + "offset": 736, + "length": 5 + } + ] + }, + { + "content": "$1.00", + "polygon": [ + 6.0502, + 6.2746, + 6.4142, + 6.2746, + 6.4142, + 6.4184, + 6.0502, + 6.4184 + ], + "spans": [ + { + "offset": 742, + "length": 5 + } + ] + }, + { + "content": "20%", + "polygon": [ + 6.712, + 6.2901, + 6.9826, + 6.2901, + 6.9826, + 6.4014, + 6.712, + 6.4014 + ], + "spans": [ + { + "offset": 748, + "length": 3 + } + ] + }, + { + "content": "$10.00", + "polygon": [ + 7.4642, + 6.2746, + 7.9116, + 6.2746, + 7.9116, + 6.4184, + 7.4642, + 6.4184 + ], + "spans": [ + { + "offset": 752, + "length": 6 + } + ] + }, + { + "content": "SUBTOTAL", + "polygon": [ + 6.0282, + 6.9118, + 6.7309, + 6.9118, + 6.7309, + 7.0199, + 6.0282, + 7.0199 + ], + "spans": [ + { + "offset": 759, + "length": 8 + } + ] + }, + { + "content": "$100.00", + "polygon": [ + 7.3842, + 6.8679, + 7.9181, + 6.8679, + 7.9181, + 7.0118, + 7.3842, + 7.0118 + ], + "spans": [ + { + "offset": 768, + "length": 7 + } + ] + }, + { + "content": "SALES TAX", + "polygon": [ + 6.0382, + 7.2089, + 6.728, + 7.2089, + 6.728, + 7.317, + 6.0382, + 7.317 + ], + "spans": [ + { + "offset": 776, + "length": 9 + } + ] + }, + { + "content": "$10.00", + "polygon": [ + 7.4709, + 7.165, + 7.9182, + 7.165, + 7.9182, + 7.3089, + 7.4709, + 7.3089 + ], + "spans": [ + { + "offset": 786, + "length": 6 + } + ] + }, + { + "content": "TOTAL", + "polygon": [ + 6.2969, + 7.5089, + 6.7309, + 7.5089, + 6.7309, + 7.617, + 6.2969, + 7.617 + ], + "spans": [ + { + "offset": 793, + "length": 5 + } + ] + }, + { + "content": "$110.00", + "polygon": [ + 7.3842, + 7.465, + 7.9181, + 7.465, + 7.9181, + 7.6089, + 7.3842, + 7.6089 + ], + "spans": [ + { + "offset": 799, + "length": 7 + } + ] + }, + { + "content": "PREVIOUS UNPAID BALANCE", + "polygon": [ + 4.8126, + 7.8055, + 6.7249, + 7.8055, + 6.7249, + 7.9137, + 4.8126, + 7.9137 + ], + "spans": [ + { + "offset": 807, + "length": 23 + } + ] + }, + { + "content": "$500.00", + "polygon": [ + 7.3842, + 7.7617, + 7.9181, + 7.7617, + 7.9181, + 7.9055, + 7.3842, + 7.9055 + ], + "spans": [ + { + "offset": 831, + "length": 7 + } + ] + }, + { + "content": "AMOUNT DUE", + "polygon": [ + 5.7652, + 8.1022, + 6.725, + 8.1022, + 6.725, + 8.2104, + 5.7652, + 8.2104 + ], + "spans": [ + { + "offset": 839, + "length": 10 + } + ] + }, + { + "content": "$610.00", + "polygon": [ + 7.3842, + 8.0584, + 7.9181, + 8.0584, + 7.9181, + 8.2022, + 7.3842, + 8.2022 + ], + "spans": [ + { + "offset": 850, + "length": 7 + } + ] + }, + { + "content": "THANK YOU FOR YOUR BUSINESS!", + "polygon": [ + 3.129, + 8.539, + 5.356, + 8.539, + 5.356, + 8.6442, + 3.129, + 8.6442 + ], + "spans": [ + { + "offset": 858, + "length": 28 + } + ] + }, + { + "content": "REMIT TO:", + "polygon": [ + 0.5909, + 9.1607, + 1.2603, + 9.1607, + 1.2603, + 9.2608, + 0.5909, + 9.2608 + ], + "spans": [ + { + "offset": 887, + "length": 9 + } + ] + }, + { + "content": "Contoso Billing", + "polygon": [ + 0.5882, + 9.3631, + 1.5828, + 9.3631, + 1.5828, + 9.5059, + 0.5882, + 9.5059 + ], + "spans": [ + { + "offset": 897, + "length": 15 + } + ] + }, + { + "content": "123 Remit St", + "polygon": [ + 0.5945, + 9.5717, + 1.4337, + 9.5717, + 1.4337, + 9.681, + 0.5945, + 9.681 + ], + "spans": [ + { + "offset": 913, + "length": 12 + } + ] + }, + { + "content": "New York, NY, 10001", + "polygon": [ + 0.5943, + 9.773, + 1.9882, + 9.773, + 1.9882, + 9.9098, + 0.5943, + 9.9098 + ], + "spans": [ + { + "offset": 926, + "length": 19 + } + ] + } + ], + "spans": [ + { + "offset": 0, + "length": 958 + } + ] + } + ], + "tables": [ + { + "rowCount": 4, + "columnCount": 8, + "cells": [ + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "DATE", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.4932, + 5.329, + 1.3011, + 5.3213, + 1.3011, + 5.6056, + 0.5009, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 549, + "length": 4 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "ITEM CODE", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.3011, + 5.3213, + 2.2476, + 5.3213, + 2.2399, + 5.6056, + 1.3011, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 554, + "length": 9 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 2, + "rowSpan": 1, + "columnSpan": 1, + "content": "DESCRIPTION", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 2.2476, + 5.3213, + 4.3174, + 5.329, + 4.3097, + 5.6056, + 2.2399, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 564, + "length": 11 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 3, + "rowSpan": 1, + "columnSpan": 1, + "content": "QTY", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.3174, + 5.329, + 4.7483, + 5.329, + 4.7483, + 5.6056, + 4.3097, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 576, + "length": 3 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 4, + "rowSpan": 1, + "columnSpan": 1, + "content": "UM", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7483, + 5.329, + 5.5639, + 5.329, + 5.5639, + 5.6056, + 4.7483, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 580, + "length": 2 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 5, + "rowSpan": 1, + "columnSpan": 1, + "content": "PRICE", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.5639, + 5.329, + 6.495, + 5.329, + 6.495, + 5.6056, + 5.5639, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 583, + "length": 5 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 6, + "rowSpan": 1, + "columnSpan": 1, + "content": "TAX", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.495, + 5.329, + 7.1875, + 5.329, + 7.1952, + 5.6056, + 6.495, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 589, + "length": 3 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 7, + "rowSpan": 1, + "columnSpan": 1, + "content": "AMOUNT", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.1875, + 5.329, + 7.9954, + 5.329, + 7.9954, + 5.598, + 7.1952, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 593, + "length": 6 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "3/4/2021", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5009, + 5.6056, + 1.3011, + 5.6056, + 1.3011, + 5.8976, + 0.5009, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 600, + "length": 8 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "A123", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.3011, + 5.6056, + 2.2399, + 5.6056, + 2.2322, + 5.8976, + 1.3011, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 609, + "length": 4 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 2, + "rowSpan": 1, + "columnSpan": 1, + "content": "Consulting Services", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 2.2399, + 5.6056, + 4.3097, + 5.6056, + 4.3097, + 5.8976, + 2.2322, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 614, + "length": 19 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 3, + "rowSpan": 1, + "columnSpan": 1, + "content": "2 :unselected:", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.3097, + 5.6056, + 4.7483, + 5.6056, + 4.7483, + 5.8976, + 4.3097, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 634, + "length": 1 + }, + { + "offset": 946, + "length": 12 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 4, + "rowSpan": 1, + "columnSpan": 1, + "content": "hours", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7483, + 5.6056, + 5.5639, + 5.6056, + 5.5639, + 5.8976, + 4.7483, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 636, + "length": 5 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 5, + "rowSpan": 1, + "columnSpan": 1, + "content": "$30.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.5639, + 5.6056, + 6.495, + 5.6056, + 6.495, + 5.8976, + 5.5639, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 642, + "length": 6 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 6, + "rowSpan": 1, + "columnSpan": 1, + "content": "10%", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.495, + 5.6056, + 7.1952, + 5.6056, + 7.1952, + 5.8976, + 6.495, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 649, + "length": 3 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 7, + "rowSpan": 1, + "columnSpan": 1, + "content": "$60.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.1952, + 5.6056, + 7.9954, + 5.598, + 7.9954, + 5.9053, + 7.1952, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 653, + "length": 6 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "3/5/2021", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5009, + 5.8976, + 1.3011, + 5.8976, + 1.3011, + 6.1973, + 0.5086, + 6.1973 + ] + } + ], + "spans": [ + { + "offset": 660, + "length": 8 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "B456", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.3011, + 5.8976, + 2.2322, + 5.8976, + 2.2245, + 6.1973, + 1.3011, + 6.1973 + ] + } + ], + "spans": [ + { + "offset": 669, + "length": 4 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 2, + "rowSpan": 1, + "columnSpan": 1, + "content": "Document Fee", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 2.2322, + 5.8976, + 4.3097, + 5.8976, + 4.3097, + 6.1973, + 2.2245, + 6.1973 + ] + } + ], + "spans": [ + { + "offset": 674, + "length": 12 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 3, + "rowSpan": 1, + "columnSpan": 1, + "content": "3", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.3097, + 5.8976, + 4.7483, + 5.8976, + 4.7483, + 6.1973, + 4.3097, + 6.1973 + ] + } + ], + "spans": [ + { + "offset": 687, + "length": 1 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 4, + "rowSpan": 1, + "columnSpan": 1, + "content": "", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7483, + 5.8976, + 5.5639, + 5.8976, + 5.5639, + 6.1973, + 4.7483, + 6.1973 + ] + } + ], + "spans": [] + }, + { + "rowIndex": 2, + "columnIndex": 5, + "rowSpan": 1, + "columnSpan": 1, + "content": "$10.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.5639, + 5.8976, + 6.495, + 5.8976, + 6.495, + 6.1973, + 5.5639, + 6.1973 + ] + } + ], + "spans": [ + { + "offset": 689, + "length": 6 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 6, + "rowSpan": 1, + "columnSpan": 1, + "content": "5%", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.495, + 5.8976, + 7.1952, + 5.8976, + 7.1952, + 6.1973, + 6.495, + 6.1973 + ] + } + ], + "spans": [ + { + "offset": 696, + "length": 2 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 7, + "rowSpan": 1, + "columnSpan": 1, + "content": "$30.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.1952, + 5.8976, + 7.9954, + 5.9053, + 7.9954, + 6.1896, + 7.1952, + 6.1973 + ] + } + ], + "spans": [ + { + "offset": 699, + "length": 6 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "3/6/2021", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5086, + 6.1973, + 1.3011, + 6.1973, + 1.3011, + 6.4969, + 0.5086, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 706, + "length": 8 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "C789", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.3011, + 6.1973, + 2.2245, + 6.1973, + 2.2245, + 6.4969, + 1.3011, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 715, + "length": 4 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 2, + "rowSpan": 1, + "columnSpan": 1, + "content": "Printing Fee", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 2.2245, + 6.1973, + 4.3097, + 6.1973, + 4.3097, + 6.4969, + 2.2245, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 720, + "length": 12 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 3, + "rowSpan": 1, + "columnSpan": 1, + "content": "10", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.3097, + 6.1973, + 4.7483, + 6.1973, + 4.7483, + 6.4969, + 4.3097, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 733, + "length": 2 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 4, + "rowSpan": 1, + "columnSpan": 1, + "content": "pages", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7483, + 6.1973, + 5.5639, + 6.1973, + 5.5639, + 6.4969, + 4.7483, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 736, + "length": 5 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 5, + "rowSpan": 1, + "columnSpan": 1, + "content": "$1.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.5639, + 6.1973, + 6.495, + 6.1973, + 6.495, + 6.4969, + 5.5639, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 742, + "length": 5 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 6, + "rowSpan": 1, + "columnSpan": 1, + "content": "20%", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.495, + 6.1973, + 7.1952, + 6.1973, + 7.1952, + 6.4969, + 6.495, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 748, + "length": 3 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 7, + "rowSpan": 1, + "columnSpan": 1, + "content": "$10.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.1952, + 6.1973, + 7.9954, + 6.1896, + 7.9954, + 6.5046, + 7.1952, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 752, + "length": 6 + } + ] + } + ], + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.4901, + 5.3293, + 7.9946, + 5.3289, + 7.9954, + 6.5019, + 0.4906, + 6.502 + ] + } + ], + "spans": [ + { + "offset": 549, + "length": 209 + }, + { + "offset": 946, + "length": 12 + } + ] + }, + { + "rowCount": 2, + "columnCount": 6, + "cells": [ + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "SALESPERSON", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.4977, + 4.565, + 1.8042, + 4.565, + 1.8119, + 4.8388, + 0.5054, + 4.8388 + ] + } + ], + "spans": [ + { + "offset": 472, + "length": 11 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "P.O. NUMBER", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.8042, + 4.565, + 3.3105, + 4.565, + 3.3105, + 4.8388, + 1.8119, + 4.8388 + ] + } + ], + "spans": [ + { + "offset": 484, + "length": 11 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 2, + "rowSpan": 1, + "columnSpan": 1, + "content": "REQUISITIONER", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 3.3105, + 4.565, + 4.6939, + 4.565, + 4.6862, + 4.8388, + 3.3105, + 4.8388 + ] + } + ], + "spans": [ + { + "offset": 496, + "length": 13 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 3, + "rowSpan": 1, + "columnSpan": 1, + "content": "SHIPPED VIA", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.6939, + 4.565, + 5.7468, + 4.565, + 5.7468, + 4.8388, + 4.6862, + 4.8388 + ] + } + ], + "spans": [ + { + "offset": 510, + "length": 11 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 4, + "rowSpan": 1, + "columnSpan": 1, + "content": "F.O.B. POINT", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.7468, + 4.565, + 6.815, + 4.565, + 6.815, + 4.8388, + 5.7468, + 4.8388 + ] + } + ], + "spans": [ + { + "offset": 522, + "length": 12 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 5, + "rowSpan": 1, + "columnSpan": 1, + "content": "TERMS", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.815, + 4.565, + 7.9985, + 4.565, + 7.9985, + 4.8388, + 6.815, + 4.8388 + ] + } + ], + "spans": [ + { + "offset": 535, + "length": 5 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5054, + 4.8388, + 1.8119, + 4.8388, + 1.8119, + 5.1058, + 0.5131, + 5.1058 + ] + } + ], + "spans": [] + }, + { + "rowIndex": 1, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "PO-3333", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.8119, + 4.8388, + 3.3105, + 4.8388, + 3.3105, + 5.1058, + 1.8119, + 5.1058 + ] + } + ], + "spans": [ + { + "offset": 541, + "length": 7 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 2, + "rowSpan": 1, + "columnSpan": 1, + "content": "", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 3.3105, + 4.8388, + 4.6862, + 4.8388, + 4.6862, + 5.1058, + 3.3105, + 5.1058 + ] + } + ], + "spans": [] + }, + { + "rowIndex": 1, + "columnIndex": 3, + "rowSpan": 1, + "columnSpan": 1, + "content": "", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.6862, + 4.8388, + 5.7468, + 4.8388, + 5.7468, + 5.1058, + 4.6862, + 5.1058 + ] + } + ], + "spans": [] + }, + { + "rowIndex": 1, + "columnIndex": 4, + "rowSpan": 1, + "columnSpan": 1, + "content": "", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.7468, + 4.8388, + 6.815, + 4.8388, + 6.815, + 5.1058, + 5.7468, + 5.1058 + ] + } + ], + "spans": [] + }, + { + "rowIndex": 1, + "columnIndex": 5, + "rowSpan": 1, + "columnSpan": 1, + "content": "", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.815, + 4.8388, + 7.9985, + 4.8388, + 7.9985, + 5.1125, + 6.815, + 5.1058 + ] + } + ], + "spans": [] + } + ], + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.4971, + 4.565, + 7.9889, + 4.5653, + 7.989, + 5.1146, + 0.4963, + 5.1141 + ] + } + ], + "spans": [ + { + "offset": 472, + "length": 76 + } + ] + }, + { + "rowCount": 5, + "columnCount": 2, + "cells": [ + { + "rowIndex": 0, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "SUBTOTAL", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7474, + 6.7934, + 6.8058, + 6.7934, + 6.8105, + 7.0886, + 4.7474, + 7.0886 + ] + } + ], + "spans": [ + { + "offset": 759, + "length": 8 + } + ] + }, + { + "rowIndex": 0, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "$100.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.8058, + 6.7934, + 7.9981, + 6.7934, + 7.9981, + 7.0934, + 6.8105, + 7.0886 + ] + } + ], + "spans": [ + { + "offset": 768, + "length": 7 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "SALES TAX", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7474, + 7.0886, + 6.8105, + 7.0886, + 6.8105, + 7.3743, + 4.7427, + 7.3743 + ] + } + ], + "spans": [ + { + "offset": 776, + "length": 9 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "$10.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.8105, + 7.0886, + 7.9981, + 7.0934, + 7.9981, + 7.3934, + 6.8105, + 7.3743 + ] + } + ], + "spans": [ + { + "offset": 786, + "length": 6 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "TOTAL", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7427, + 7.3743, + 6.8105, + 7.3743, + 6.8105, + 7.6839, + 4.7427, + 7.6839 + ] + } + ], + "spans": [ + { + "offset": 793, + "length": 5 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "$110.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.8105, + 7.3743, + 7.9981, + 7.3934, + 7.9981, + 7.6886, + 6.8105, + 7.6839 + ] + } + ], + "spans": [ + { + "offset": 799, + "length": 7 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "PREVIOUS UNPAID BALANCE", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7427, + 7.6839, + 6.8105, + 7.6839, + 6.8105, + 7.9743, + 4.7427, + 7.9743 + ] + } + ], + "spans": [ + { + "offset": 807, + "length": 23 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "$500.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.8105, + 7.6839, + 7.9981, + 7.6886, + 7.9981, + 7.9839, + 6.8105, + 7.9743 + ] + } + ], + "spans": [ + { + "offset": 831, + "length": 7 + } + ] + }, + { + "rowIndex": 4, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "AMOUNT DUE", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7427, + 7.9743, + 6.8105, + 7.9743, + 6.8105, + 8.2839, + 4.7381, + 8.2839 + ] + } + ], + "spans": [ + { + "offset": 839, + "length": 10 + } + ] + }, + { + "rowIndex": 4, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "$610.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.8105, + 7.9743, + 7.9981, + 7.9839, + 7.9981, + 8.2839, + 6.8105, + 8.2839 + ] + } + ], + "spans": [ + { + "offset": 850, + "length": 7 + } + ] + } + ], + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7456, + 6.7793, + 8.0143, + 6.7788, + 8.0137, + 8.2981, + 4.7446, + 8.2981 + ] + } + ], + "spans": [ + { + "offset": 759, + "length": 98 + } + ] + } + ], + "documents": [ + { + "docType": "prebuilt:invoice", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0, + 0, + 8.5, + 0, + 8.5, + 11, + 0, + 11 + ] + } + ], + "fields": { + "AmountDue": { + "type": "number", + "valueNumber": 610, + "content": "$610.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.3842, + 8.0584, + 7.9181, + 8.0584, + 7.9181, + 8.2022, + 7.3842, + 8.2022 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 850, + "length": 7 + } + ] + }, + "BillingAddress": { + "type": "string", + "valueString": "123 Bill St, Redmond WA, 98052", + "content": "123 Bill St, Redmond WA, 98052", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5943, + 3.9681, + 2.0083, + 3.9681, + 2.0083, + 4.3082, + 0.5943, + 4.3082 + ] + } + ], + "confidence": 0.947, + "spans": [ + { + "offset": 376, + "length": 12 + }, + { + "offset": 418, + "length": 17 + } + ] + }, + "BillingAddressRecipient": { + "type": "string", + "valueString": "Microsoft Finance", + "content": "Microsoft Finance", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5943, + 3.7641, + 1.7878, + 3.7641, + 1.7878, + 3.8794, + 0.5943, + 3.8794 + ] + } + ], + "confidence": 0.957, + "spans": [ + { + "offset": 320, + "length": 17 + } + ] + }, + "CustomerAddress": { + "type": "string", + "valueString": "123 Other St, Redmond WA, 98052", + "content": "123 Other St, Redmond WA, 98052", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5943, + 2.8476, + 2.0083, + 2.8476, + 2.0083, + 3.1878, + 0.5943, + 3.1878 + ] + } + ], + "confidence": 0.947, + "spans": [ + { + "offset": 253, + "length": 31 + } + ] + }, + "CustomerAddressRecipient": { + "type": "string", + "valueString": "Microsoft Corp", + "content": "Microsoft Corp", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5943, + 2.6436, + 1.586, + 2.6436, + 1.586, + 2.7871, + 0.5943, + 2.7871 + ] + } + ], + "confidence": 0.956, + "spans": [ + { + "offset": 238, + "length": 14 + } + ] + }, + "CustomerId": { + "type": "string", + "valueString": "CID-12345", + "content": "CID-12345", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.3369, + 2.4491, + 7.9951, + 2.4491, + 7.9951, + 2.5486, + 7.3369, + 2.5486 + ] + } + ], + "confidence": 0.964, + "spans": [ + { + "offset": 228, + "length": 9 + } + ] + }, + "CustomerName": { + "type": "string", + "valueString": "MICROSOFT CORPORATION", + "content": "MICROSOFT CORPORATION", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.2419, + 2.0391, + 7.9825, + 2.0391, + 7.9825, + 2.1386, + 6.2419, + 2.1386 + ] + } + ], + "confidence": 0.949, + "spans": [ + { + "offset": 153, + "length": 21 + } + ] + }, + "DueDate": { + "type": "date", + "valueDate": "2019-12-15", + "content": "12/15/2019", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.2494, + 1.8206, + 7.993, + 1.8206, + 7.993, + 1.9515, + 7.2494, + 1.9515 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 127, + "length": 10 + } + ] + }, + "InvoiceDate": { + "type": "date", + "valueDate": "2019-11-15", + "content": "11/15/2019", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.2528, + 1.6139, + 7.993, + 1.6139, + 7.993, + 1.7449, + 7.2528, + 1.7449 + ] + } + ], + "confidence": 0.972, + "spans": [ + { + "offset": 86, + "length": 10 + } + ] + }, + "InvoiceId": { + "type": "string", + "valueString": "INV-100", + "content": "INV-100", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.4959, + 1.422, + 7.9988, + 1.422, + 7.9988, + 1.5215, + 7.4959, + 1.5215 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 51, + "length": 7 + } + ] + }, + "InvoiceTotal": { + "type": "number", + "valueNumber": 110, + "content": "$110.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.3842, + 7.465, + 7.9181, + 7.465, + 7.9181, + 7.6089, + 7.3842, + 7.6089 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 799, + "length": 7 + } + ] + }, + "Items": { + "type": "array", + "valueArray": [ + { + "type": "object", + "valueObject": { + "Amount": { + "type": "number", + "valueNumber": 60, + "content": "$60.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.4642, + 5.6777, + 7.9116, + 5.6777, + 7.9116, + 5.8215, + 7.4642, + 5.8215 + ] + } + ], + "confidence": 0.902, + "spans": [ + { + "offset": 653, + "length": 6 + } + ] + }, + "Date": { + "type": "date", + "valueDate": "2021-03-04", + "content": "3/4/2021", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.592, + 5.682, + 1.2092, + 5.682, + 1.2092, + 5.8243, + 0.592, + 5.8243 + ] + } + ], + "confidence": 0.938, + "spans": [ + { + "offset": 600, + "length": 8 + } + ] + }, + "Description": { + "type": "string", + "valueString": "Consulting Services", + "content": "Consulting Services", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 2.3388, + 5.6883, + 3.6278, + 5.6883, + 3.6278, + 5.8312, + 2.3388, + 5.8312 + ] + } + ], + "confidence": 0.9, + "spans": [ + { + "offset": 614, + "length": 19 + } + ] + }, + "ProductCode": { + "type": "string", + "valueString": "A123", + "content": "A123", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.6069, + 5.6948, + 1.9417, + 5.6948, + 1.9417, + 5.803, + 1.6069, + 5.803 + ] + } + ], + "confidence": 0.877, + "spans": [ + { + "offset": 609, + "length": 4 + } + ] + }, + "Quantity": { + "type": "number", + "valueNumber": 2, + "content": "2", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.5977, + 5.6948, + 4.6635, + 5.6948, + 4.6635, + 5.8017, + 4.5977, + 5.8017 + ] + } + ], + "confidence": 0.899, + "spans": [ + { + "offset": 634, + "length": 1 + } + ] + }, + "Tax": { + "type": "number", + "content": "10%", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.7168, + 5.6932, + 6.9826, + 5.6932, + 6.9826, + 5.8045, + 6.7168, + 5.8045 + ] + } + ], + "confidence": 0.78, + "spans": [ + { + "offset": 649, + "length": 3 + } + ] + }, + "Unit": { + "type": "string", + "valueString": "hours", + "content": "hours", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.8444, + 5.6883, + 5.2071, + 5.6883, + 5.2071, + 5.803, + 4.8444, + 5.803 + ] + } + ], + "confidence": 0.899, + "spans": [ + { + "offset": 636, + "length": 5 + } + ] + }, + "UnitPrice": { + "type": "number", + "valueNumber": 30, + "content": "$30.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.9669, + 5.6777, + 6.4142, + 5.6777, + 6.4142, + 5.8215, + 5.9669, + 5.8215 + ] + } + ], + "confidence": 0.828, + "spans": [ + { + "offset": 642, + "length": 6 + } + ] + } + }, + "content": "3/4/2021 A123 Consulting Services 2 hours $30.00 10% $60.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.592, + 5.6777, + 7.9116, + 5.6777, + 7.9116, + 5.8312, + 0.592, + 5.8312 + ] + } + ], + "confidence": 0.955, + "spans": [ + { + "offset": 600, + "length": 59 + } + ] + }, + { + "type": "object", + "valueObject": { + "Amount": { + "type": "number", + "valueNumber": 30, + "content": "$30.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.4642, + 5.9743, + 7.9116, + 5.9743, + 7.9116, + 6.1182, + 7.4642, + 6.1182 + ] + } + ], + "confidence": 0.916, + "spans": [ + { + "offset": 699, + "length": 6 + } + ] + }, + "Date": { + "type": "date", + "valueDate": "2021-03-05", + "content": "3/5/2021", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.592, + 5.9787, + 1.2088, + 5.9787, + 1.2088, + 6.121, + 0.592, + 6.121 + ] + } + ], + "confidence": 0.902, + "spans": [ + { + "offset": 660, + "length": 8 + } + ] + }, + "Description": { + "type": "string", + "valueString": "Document Fee", + "content": "Document Fee", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 2.345, + 5.993, + 3.3096, + 5.993, + 3.3096, + 6.0997, + 2.345, + 6.0997 + ] + } + ], + "confidence": 0.901, + "spans": [ + { + "offset": 674, + "length": 12 + } + ] + }, + "ProductCode": { + "type": "string", + "valueString": "B456", + "content": "B456", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.6214, + 5.9915, + 1.9419, + 5.9915, + 1.9419, + 6.0997, + 1.6214, + 6.0997 + ] + } + ], + "confidence": 0.886, + "spans": [ + { + "offset": 669, + "length": 4 + } + ] + }, + "Quantity": { + "type": "number", + "valueNumber": 3, + "content": "3", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.5967, + 5.9915, + 4.6627, + 5.9915, + 4.6627, + 6.0997, + 4.5967, + 6.0997 + ] + } + ], + "confidence": 0.898, + "spans": [ + { + "offset": 687, + "length": 1 + } + ] + }, + "Tax": { + "type": "number", + "content": "5%", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.7508, + 5.9898, + 6.9393, + 5.9898, + 6.9393, + 6.1012, + 6.7508, + 6.1012 + ] + } + ], + "confidence": 0.772, + "spans": [ + { + "offset": 696, + "length": 2 + } + ] + }, + "UnitPrice": { + "type": "number", + "valueNumber": 10, + "content": "$10.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.9669, + 5.9743, + 6.4142, + 5.9743, + 6.4142, + 6.1182, + 5.9669, + 6.1182 + ] + } + ], + "confidence": 0.831, + "spans": [ + { + "offset": 689, + "length": 6 + } + ] + } + }, + "content": "3/5/2021 B456 Document Fee 3 $10.00 5% $30.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.592, + 5.9743, + 7.9116, + 5.9743, + 7.9116, + 6.121, + 0.592, + 6.121 + ] + } + ], + "confidence": 0.941, + "spans": [ + { + "offset": 660, + "length": 45 + } + ] + }, + { + "type": "object", + "valueObject": { + "Amount": { + "type": "number", + "valueNumber": 10, + "content": "$10.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.4642, + 6.2746, + 7.9116, + 6.2746, + 7.9116, + 6.4184, + 7.4642, + 6.4184 + ] + } + ], + "confidence": 0.959, + "spans": [ + { + "offset": 752, + "length": 6 + } + ] + }, + "Date": { + "type": "date", + "valueDate": "2021-03-06", + "content": "3/6/2021", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.592, + 6.2789, + 1.2088, + 6.2789, + 1.2088, + 6.4213, + 0.592, + 6.4213 + ] + } + ], + "confidence": 0.903, + "spans": [ + { + "offset": 706, + "length": 8 + } + ] + }, + "Description": { + "type": "string", + "valueString": "Printing Fee", + "content": "Printing Fee", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 2.345, + 6.2906, + 3.1351, + 6.2906, + 3.1351, + 6.4281, + 2.345, + 6.4281 + ] + } + ], + "confidence": 0.899, + "spans": [ + { + "offset": 720, + "length": 12 + } + ] + }, + "ProductCode": { + "type": "string", + "valueString": "C789", + "content": "C789", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.6152, + 6.2918, + 1.94, + 6.2918, + 1.94, + 6.3999, + 1.6152, + 6.3999 + ] + } + ], + "confidence": 0.898, + "spans": [ + { + "offset": 715, + "length": 4 + } + ] + }, + "Quantity": { + "type": "number", + "valueNumber": 10, + "content": "10", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.5158, + 6.2918, + 4.6637, + 6.2918, + 4.6637, + 6.3999, + 4.5158, + 6.3999 + ] + } + ], + "confidence": 0.903, + "spans": [ + { + "offset": 733, + "length": 2 + } + ] + }, + "Tax": { + "type": "number", + "content": "20%", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.712, + 6.2901, + 6.9826, + 6.2901, + 6.9826, + 6.4014, + 6.712, + 6.4014 + ] + } + ], + "confidence": 0.791, + "spans": [ + { + "offset": 748, + "length": 3 + } + ] + }, + "Unit": { + "type": "string", + "valueString": "pages", + "content": "pages", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.8444, + 6.3196, + 5.2199, + 6.3196, + 5.2199, + 6.4281, + 4.8444, + 6.4281 + ] + } + ], + "confidence": 0.899, + "spans": [ + { + "offset": 736, + "length": 5 + } + ] + }, + "UnitPrice": { + "type": "number", + "valueNumber": 1, + "content": "$1.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.0502, + 6.2746, + 6.4142, + 6.2746, + 6.4142, + 6.4184, + 6.0502, + 6.4184 + ] + } + ], + "confidence": 0.829, + "spans": [ + { + "offset": 742, + "length": 5 + } + ] + } + }, + "content": "3/6/2021 C789 Printing Fee 10 pages $1.00 20% $10.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.592, + 6.2746, + 7.9116, + 6.2746, + 7.9116, + 6.4281, + 0.592, + 6.4281 + ] + } + ], + "confidence": 0.956, + "spans": [ + { + "offset": 706, + "length": 52 + } + ] + } + ] + }, + "Locale": { + "type": "string", + "valueString": "en-US", + "confidence": 1 + }, + "PreviousUnpaidBalance": { + "type": "number", + "valueNumber": 500, + "content": "$500.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.3842, + 7.7617, + 7.9181, + 7.7617, + 7.9181, + 7.9055, + 7.3842, + 7.9055 + ] + } + ], + "confidence": 0.962, + "spans": [ + { + "offset": 831, + "length": 7 + } + ] + }, + "PurchaseOrder": { + "type": "string", + "valueString": "PO-3333", + "content": "PO-3333", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.9114, + 4.9282, + 2.4718, + 4.9282, + 2.4718, + 5.0363, + 1.9114, + 5.0363 + ] + } + ], + "confidence": 0.967, + "spans": [ + { + "offset": 541, + "length": 7 + } + ] + }, + "RemittanceAddress": { + "type": "string", + "valueString": "123 Remit St New York, NY, 10001", + "content": "123 Remit St New York, NY, 10001", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5943, + 9.5717, + 1.9882, + 9.5717, + 1.9882, + 9.9098, + 0.5943, + 9.9098 + ] + } + ], + "confidence": 0.946, + "spans": [ + { + "offset": 913, + "length": 32 + } + ] + }, + "RemittanceAddressRecipient": { + "type": "string", + "valueString": "Contoso Billing", + "content": "Contoso Billing", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5882, + 9.3631, + 1.5828, + 9.3631, + 1.5828, + 9.5059, + 0.5882, + 9.5059 + ] + } + ], + "confidence": 0.956, + "spans": [ + { + "offset": 897, + "length": 15 + } + ] + }, + "ServiceAddress": { + "type": "string", + "valueString": "123 Service St, Redmond WA, 98052", + "content": "123 Service St, Redmond WA, 98052", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.2197, + 3.9734, + 7.6337, + 3.9734, + 7.6337, + 4.3082, + 6.2197, + 4.3082 + ] + } + ], + "confidence": 0.946, + "spans": [ + { + "offset": 402, + "length": 15 + }, + { + "offset": 454, + "length": 17 + } + ] + }, + "ServiceAddressRecipient": { + "type": "string", + "valueString": "Microsoft Services", + "content": "Microsoft Services", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.2197, + 3.7641, + 7.4427, + 3.7641, + 7.4427, + 3.8794, + 6.2197, + 3.8794 + ] + } + ], + "confidence": 0.951, + "spans": [ + { + "offset": 357, + "length": 18 + } + ] + }, + "ServiceEndDate": { + "type": "date", + "valueDate": "2019-11-14", + "content": "11/14/2019", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.2528, + 2.2306, + 7.9952, + 2.2306, + 7.9952, + 2.3615, + 7.2528, + 2.3615 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 204, + "length": 10 + } + ] + }, + "ServiceStartDate": { + "type": "date", + "valueDate": "2019-10-14", + "content": "10/14/2019", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.3357, + 2.2306, + 7.0749, + 2.2306, + 7.0749, + 2.3615, + 6.3357, + 2.3615 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 191, + "length": 10 + } + ] + }, + "ShippingAddress": { + "type": "string", + "valueString": "123 Ship St, Redmond WA, 98052", + "content": "123 Ship St, Redmond WA, 98052", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 3.3454, + 3.9681, + 4.7594, + 3.9681, + 4.7594, + 4.3082, + 3.3454, + 4.3082 + ] + } + ], + "confidence": 0.946, + "spans": [ + { + "offset": 389, + "length": 12 + }, + { + "offset": 436, + "length": 17 + } + ] + }, + "ShippingAddressRecipient": { + "type": "string", + "valueString": "Microsoft Delivery", + "content": "Microsoft Delivery", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 3.3454, + 3.7641, + 4.5762, + 3.7641, + 4.5762, + 3.9076, + 3.3454, + 3.9076 + ] + } + ], + "confidence": 0.955, + "spans": [ + { + "offset": 338, + "length": 18 + } + ] + }, + "SubTotal": { + "type": "number", + "valueNumber": 100, + "content": "$100.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.3842, + 6.8679, + 7.9181, + 6.8679, + 7.9181, + 7.0118, + 7.3842, + 7.0118 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 768, + "length": 7 + } + ] + }, + "TotalTax": { + "type": "number", + "valueNumber": 10, + "content": "$10.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.4709, + 7.165, + 7.9182, + 7.165, + 7.9182, + 7.3089, + 7.4709, + 7.3089 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 786, + "length": 6 + } + ] + }, + "VendorAddress": { + "type": "string", + "valueString": "123 456th St New York, NY, 10001", + "content": "123 456th St New York, NY, 10001", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5943, + 1.6092, + 1.9894, + 1.6092, + 1.9894, + 1.9675, + 0.5943, + 1.9675 + ] + } + ], + "confidence": 0.946, + "spans": [ + { + "offset": 59, + "length": 12 + }, + { + "offset": 97, + "length": 19 + } + ] + }, + "VendorAddressRecipient": { + "type": "string", + "valueString": "Contoso Headquarters", + "content": "Contoso Headquarters", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5882, + 1.4239, + 2.0978, + 1.4239, + 2.0978, + 1.5664, + 0.5882, + 1.5664 + ] + } + ], + "confidence": 0.956, + "spans": [ + { + "offset": 21, + "length": 20 + } + ] + }, + "VendorName": { + "type": "string", + "valueString": "CONTOSO LTD.", + "content": "CONTOSO LTD.", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5911, + 0.6857, + 2.3181, + 0.6857, + 2.3181, + 0.8664, + 0.5911, + 0.8664 + ] + } + ], + "confidence": 0.956, + "spans": [ + { + "offset": 0, + "length": 12 + } + ] + } + }, + "confidence": 1, + "spans": [ + { + "offset": 0, + "length": 958 + } + ] + } + ] + } + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetClassifyDocumentResult.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetClassifyDocumentResult.json new file mode 100644 index 0000000000000..759676c51adbd --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetClassifyDocumentResult.json @@ -0,0 +1,104 @@ +{ + "operationId": "DocumentClassifiers_GetClassifyResult", + "title": "Get Classify Document Result", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "classifierId": "myClassifier", + "resultId": "3b31320d-8bab-4f88-b19c-2322a7f11034" + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "createdDateTime": "2021-09-24T13:00:46Z", + "lastUpdatedDateTime": "2021-09-24T13:00:49Z", + "analyzeResult": { + "apiVersion": "2024-02-29-preview", + "modelId": "myClassifier", + "stringIndexType": "textElements", + "contentFormat": "text", + "content": "", + "pages": [ + { + "pageNumber": 1, + "width": 8.5, + "height": 11, + "unit": "inch", + "spans": [] + }, + { + "pageNumber": 2, + "width": 8.5, + "height": 11, + "unit": "inch", + "spans": [] + }, + { + "pageNumber": 3, + "width": 8.5, + "height": 11, + "unit": "inch", + "spans": [] + } + ], + "documents": [ + { + "docType": "formA", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0, + 0, + 8.5, + 0, + 8.5, + 11, + 0, + 11 + ] + }, + { + "pageNumber": 2, + "polygon": [ + 0, + 0, + 8.5, + 0, + 8.5, + 11, + 0, + 11 + ] + } + ], + "confidence": 0.97, + "spans": [] + }, + { + "docType": "formB", + "boundingRegions": [ + { + "pageNumber": 3, + "polygon": [ + 0, + 0, + 8.5, + 0, + 8.5, + 11, + 0, + 11 + ] + } + ], + "confidence": 0.97, + "spans": [] + } + ] + } + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentClassifier.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentClassifier.json new file mode 100644 index 0000000000000..19e3f8687ebca --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentClassifier.json @@ -0,0 +1,34 @@ +{ + "operationId": "DocumentClassifiers_GetClassifier", + "title": "Get Document Classifier", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "classifierId": "myClassifier" + }, + "responses": { + "200": { + "body": { + "classifierId": "myClassifier", + "description": "Classifier description", + "createdDateTime": "2022-07-30T00:00:00Z", + "expirationDateTime": "2023-01-01T00:00:00Z", + "apiVersion": "2024-02-29-preview", + "docTypes": { + "formA": { + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "prefix": "formADocs/" + } + }, + "formB": { + "azureBlobFileListSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "fileList": "formB.jsonl" + } + } + } + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentClassifiers.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentClassifiers.json new file mode 100644 index 0000000000000..e566abce89e6e --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentClassifiers.json @@ -0,0 +1,59 @@ +{ + "operationId": "DocumentClassifiers_ListClassifiers", + "title": "Get Document Classifiers", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "classifierId": "classifier1", + "description": "Classifier1 description", + "createdDateTime": "2022-07-30T00:00:00Z", + "expirationDateTime": "2023-01-01T00:00:00Z", + "apiVersion": "2024-02-29-preview", + "docTypes": { + "formA": { + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "prefix": "formADocs/" + } + }, + "formB": { + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "prefix": "formBDocs/" + } + } + } + }, + { + "classifierId": "classifier2", + "description": "Classifier2 description", + "createdDateTime": "2022-07-30T00:00:00Z", + "expirationDateTime": "2023-01-01T00:00:00Z", + "apiVersion": "2024-02-29-preview", + "docTypes": { + "formB": { + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "prefix": "formBDocs/" + } + }, + "formC": { + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "prefix": "formCDocs/" + } + } + } + } + ], + "nextLink": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentClassifiers?nextLink=nextLinkData" + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentModel_Custom.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentModel_Custom.json new file mode 100644 index 0000000000000..cedd4aee365c6 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentModel_Custom.json @@ -0,0 +1,44 @@ +{ + "operationId": "DocumentModels_GetModel", + "title": "Get Custom Document Model", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "myCustomModel" + }, + "responses": { + "200": { + "body": { + "modelId": "myCustomModel", + "description": "Custom model description", + "createdDateTime": "2021-09-24T12:54:35Z", + "expirationDateTime": "2023-01-01T00:00:00Z", + "apiVersion": "2024-02-29-preview", + "docTypes": { + "myForm": { + "fieldSchema": { + "Name": { + "type": "string" + }, + "Date": { + "type": "date" + }, + "Amount": { + "type": "number" + } + }, + "buildMode": "template", + "fieldConfidence": { + "Name": 0.9, + "Date": 0.95, + "Amount": 0.93 + } + } + }, + "tags": { + "createdBy": "myUserId" + } + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentModel_Prebuilt.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentModel_Prebuilt.json new file mode 100644 index 0000000000000..4ce655545bdfb --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentModel_Prebuilt.json @@ -0,0 +1,136 @@ +{ + "operationId": "DocumentModels_GetModel", + "title": "Get Prebuilt Document Model", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "prebuilt-invoice" + }, + "responses": { + "200": { + "body": { + "modelId": "prebuilt-invoice", + "description": "Prebuilt model to extract key information from English invoices, including customer, vendor, invoice ID, due date, total, and more.", + "createdDateTime": "2021-07-30T00:00:00Z", + "apiVersion": "2024-02-29-preview", + "docTypes": { + "prebuilt:invoice": { + "fieldSchema": { + "CustomerName": { + "type": "string" + }, + "CustomerId": { + "type": "string" + }, + "PurchaseOrder": { + "type": "string" + }, + "InvoiceId": { + "type": "string" + }, + "InvoiceDate": { + "type": "date" + }, + "DueDate": { + "type": "date" + }, + "VendorName": { + "type": "string" + }, + "VendorAddress": { + "type": "string" + }, + "VendorAddressRecipient": { + "type": "string" + }, + "CustomerAddress": { + "type": "string" + }, + "CustomerAddressRecipient": { + "type": "string" + }, + "BillingAddress": { + "type": "string" + }, + "BillingAddressRecipient": { + "type": "string" + }, + "ShippingAddress": { + "type": "string" + }, + "ShippingAddressRecipient": { + "type": "string" + }, + "SubTotal": { + "type": "number" + }, + "TotalTax": { + "type": "number" + }, + "InvoiceTotal": { + "type": "number" + }, + "AmountDue": { + "type": "number" + }, + "PreviousUnpaidBalance": { + "type": "number" + }, + "RemittanceAddress": { + "type": "string" + }, + "RemittanceAddressRecipient": { + "type": "string" + }, + "ServiceAddress": { + "type": "string" + }, + "ServiceAddressRecipient": { + "type": "string" + }, + "ServiceStartDate": { + "type": "date" + }, + "ServiceEndDate": { + "type": "date" + }, + "Items": { + "type": "array", + "items": { + "type": "object", + "properties": { + "Amount": { + "type": "number" + }, + "Date": { + "type": "date" + }, + "Description": { + "type": "string" + }, + "Quantity": { + "type": "number" + }, + "ProductCode": { + "type": "string" + }, + "Tax": { + "type": "number" + }, + "Unit": { + "type": "string" + }, + "UnitPrice": { + "type": "number" + } + } + } + } + } + } + }, + "tags": {} + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentModels.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentModels.json new file mode 100644 index 0000000000000..cd1273aec3914 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetDocumentModels.json @@ -0,0 +1,30 @@ +{ + "operationId": "DocumentModels_ListModels", + "title": "Get Document Models", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "modelId": "prebuilt-layout", + "createdDateTime": "2021-07-30T00:00:00Z", + "description": "Prebuilt model to extract text, selection marks, tables, and other layout information.", + "apiVersion": "2024-02-29-preview" + }, + { + "modelId": "myCustomModel", + "createdDateTime": "2021-09-24T12:54:35Z", + "expirationDateTime": "2023-01-01T00:00:00Z", + "description": "Custom model description", + "apiVersion": "2024-02-29-preview" + } + ], + "nextLink": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels?nextLink=nextLinkData" + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation.json new file mode 100644 index 0000000000000..43cfef3a22d64 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation.json @@ -0,0 +1,28 @@ +{ + "operationId": "MiscellaneousOperations_GetOperation", + "title": "Get Operation", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4" + }, + "responses": { + "200": { + "body": { + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4", + "status": "succeeded", + "percentCompleted": 100, + "createdDateTime": "2021-09-23T09:12:57Z", + "lastUpdatedDateTime": "2021-09-23T09:13:01Z", + "kind": "documentModelBuild", + "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/myCustomModel", + "result": { + "modelId": "myCustomModel", + "description": "Custom model description", + "createdDateTime": "2021-09-23T09:13:01Z", + "apiVersion": "2024-02-29-preview" + } + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation_DocumentClassifierBuild.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation_DocumentClassifierBuild.json new file mode 100644 index 0000000000000..18e2a3bb20268 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation_DocumentClassifierBuild.json @@ -0,0 +1,43 @@ +{ + "operationId": "MiscellaneousOperations_GetDocumentClassifierBuildOperation", + "title": "Get Operation - Document Classifier Build", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4" + }, + "responses": { + "200": { + "body": { + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4", + "status": "succeeded", + "percentCompleted": 100, + "createdDateTime": "2021-09-23T09:12:57Z", + "lastUpdatedDateTime": "2021-09-23T09:13:01Z", + "kind": "documentClassifierBuild", + "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentClassifiers/myClassifier", + "result": { + "classifierId": "myClassifier", + "description": "Classifier description", + "createdDateTime": "2022-07-30T00:00:00Z", + "expirationDateTime": "2023-01-01T00:00:00Z", + "apiVersion": "2024-02-29-preview", + "docTypes": { + "formA": { + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "prefix": "formADocs/" + } + }, + "formB": { + "azureBlobFileListSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "fileList": "formB.jsonl" + } + } + } + } + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation_DocumentModelBuild.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation_DocumentModelBuild.json new file mode 100644 index 0000000000000..0a237b5a234c6 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation_DocumentModelBuild.json @@ -0,0 +1,28 @@ +{ + "operationId": "MiscellaneousOperations_GetDocumentModelBuildOperation", + "title": "Get Operation - Document Model Build", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4" + }, + "responses": { + "200": { + "body": { + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4", + "status": "succeeded", + "percentCompleted": 100, + "createdDateTime": "2021-09-23T09:12:57Z", + "lastUpdatedDateTime": "2021-09-23T09:13:01Z", + "kind": "documentModelBuild", + "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/myCustomModel", + "result": { + "modelId": "myCustomModel", + "description": "Custom model description", + "createdDateTime": "2021-09-23T09:13:01Z", + "apiVersion": "2024-02-29-preview" + } + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation_DocumentModelCompose.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation_DocumentModelCompose.json new file mode 100644 index 0000000000000..3cf02e8601ece --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation_DocumentModelCompose.json @@ -0,0 +1,28 @@ +{ + "operationId": "MiscellaneousOperations_GetDocumentModelComposeOperation", + "title": "Get Operation - Document Model Compose", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4" + }, + "responses": { + "200": { + "body": { + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4", + "status": "succeeded", + "percentCompleted": 100, + "createdDateTime": "2021-09-23T09:12:57Z", + "lastUpdatedDateTime": "2021-09-23T09:13:01Z", + "kind": "documentModelCompose", + "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/myCustomModel", + "result": { + "modelId": "myCustomModel", + "description": "Custom model description", + "createdDateTime": "2021-09-23T09:13:01Z", + "apiVersion": "2024-02-29-preview" + } + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation_DocumentModelCopyTo.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation_DocumentModelCopyTo.json new file mode 100644 index 0000000000000..a8fbf1279f942 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperation_DocumentModelCopyTo.json @@ -0,0 +1,28 @@ +{ + "operationId": "MiscellaneousOperations_GetDocumentModelCopyToOperation", + "title": "Get Operation - Document Model Copy To", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4" + }, + "responses": { + "200": { + "body": { + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4", + "status": "succeeded", + "percentCompleted": 100, + "createdDateTime": "2021-09-23T09:12:57Z", + "lastUpdatedDateTime": "2021-09-23T09:13:01Z", + "kind": "documentModelCopyTo", + "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/myCustomModel", + "result": { + "modelId": "myCustomModel", + "description": "Custom model description", + "createdDateTime": "2021-09-23T09:13:01Z", + "apiVersion": "2024-02-29-preview" + } + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperations.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperations.json new file mode 100644 index 0000000000000..09b590af5fa77 --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetOperations.json @@ -0,0 +1,27 @@ +{ + "operationId": "MiscellaneousOperations_ListOperations", + "title": "Get Operations", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4", + "status": "running", + "percentCompleted": 0, + "createdDateTime": "2021-09-23T09:12:57Z", + "lastUpdatedDateTime": "2021-09-23T09:12:58Z", + "kind": "documentModelBuild", + "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/myCustomModel", + "apiVersion": "2024-02-29-preview" + } + ], + "nextLink": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/operations?nextLink=nextLinkData" + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetResourceDetails.json b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetResourceDetails.json new file mode 100644 index 0000000000000..cd808cf8bac3c --- /dev/null +++ b/specification/ai/DocumentIntelligence/examples/2024-02-29-preview/GetResourceDetails.json @@ -0,0 +1,23 @@ +{ + "operationId": "MiscellaneousOperations_GetResourceInfo", + "title": "Get Resource Details", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview" + }, + "responses": { + "200": { + "body": { + "customDocumentModels": { + "count": 2, + "limit": 13 + }, + "customNeuralDocumentModelBuilds": { + "used": 1, + "quota": 10, + "quotaResetDateTime": "2023-03-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/ai/DocumentIntelligence/main.tsp b/specification/ai/DocumentIntelligence/main.tsp index d810d9dcd495b..e479fd1ed5e6c 100644 --- a/specification/ai/DocumentIntelligence/main.tsp +++ b/specification/ai/DocumentIntelligence/main.tsp @@ -9,7 +9,7 @@ using TypeSpec.Rest; using TypeSpec.Http; @doc("Extracts content, layout, and structured data from documents.") -@versioned(Versions) +@versioned(DocumentIntelligence.Versions) @useAuth( ApiKeyAuth | OAuth2Auth<[ { @@ -36,6 +36,6 @@ namespace DocumentIntelligence; @doc("Service API versions.") enum Versions { @useDependency(Azure.Core.Versions.v1_0_Preview_2) - @doc("The 2023-10-31-preview version of the DocumentIntelligence service.") - v2023_10_31_preview: "2023-10-31-preview", + @doc("The 2024-02-29-preview version of the DocumentIntelligence service.") + v2024_02_29_preview: "2024-02-29-preview", } diff --git a/specification/ai/DocumentIntelligence/models.tsp b/specification/ai/DocumentIntelligence/models.tsp index a942b63c1b150..f3d208e43fd6b 100644 --- a/specification/ai/DocumentIntelligence/models.tsp +++ b/specification/ai/DocumentIntelligence/models.tsp @@ -221,6 +221,10 @@ enum DocumentFieldType { @doc("Boolean value, normalized to true or false.") boolean, + + @added(Versions.v2024_02_29_preview) + @doc("Array of selected string values.") + selectionGroup, } @doc("Presence of signature.") @@ -263,11 +267,28 @@ enum SplitMode { @lroStatus @doc("Operation status.") enum OperationStatus { - @doc("The operation has not started yet.") notStarted, - @doc("The operation is in progress.") running, - @doc("The operation has failed.") @lroFailed failed, - @doc("The operation has succeeded.") @lroSucceeded succeeded, - @doc("The operation has been canceled.") @lroCanceled canceled, + @doc("The operation has not started yet.") + notStarted, + + @doc("The operation is in progress.") + running, + + @doc("The operation has failed.") + @lroFailed + failed, + + @doc("The operation has succeeded.") + @lroSucceeded + succeeded, + + @added(Versions.v2024_02_29_preview) + @doc("The operation has completed.") + @lroSucceeded + completed, + + @doc("The operation has been canceled.") + @lroCanceled + canceled, } @doc("Type of content source.") @@ -336,9 +357,22 @@ model InnerError { innererror?: InnerError; } +@doc("The error object.") +@projectedName("csharp", "DocumentIntelligenceWarning") +model Warning { + @doc("One of a server-defined set of warning codes.") + code: string; + + @doc("A human-readable representation of the warning.") + message: string; + + @doc("The target of the error.") + target?: string; +} + @doc("Status and result of the analyze operation.") model AnalyzeResultOperation { - @doc("Operation status.") + @doc("Operation status. notStarted, running, succeeded, or failed") status: OperationStatus; @doc("Date and time (UTC) when the analyze operation was submitted.") @@ -929,6 +963,10 @@ model DocumentField { @doc("Boolean value.") valueBoolean?: boolean; + @added(Versions.v2024_02_29_preview) + @doc("Selection group value.") + valueSelectionGroup?: string[]; + @doc("Field content.") content?: string; @@ -1126,9 +1164,9 @@ model OperationDetails { @doc("Operation ID") @key @visibility("read", "create") - operationId: uuid; + operationId: string; - @doc("Operation status.") + @doc("Operation status. notStarted, running, completed, or failed") status: OperationStatus; @doc("Operation progress (0-100).") @@ -1200,6 +1238,10 @@ model DocumentModelDetails { @doc("Supported document types.") docTypes?: Record; + + @added(Versions.v2024_02_29_preview) + @doc("List of warnings encountered while building the model.") + warnings?: Warning[]; } @doc("Document type info.") @@ -1248,6 +1290,11 @@ model BuildDocumentClassifierRequest { @maxLength(4096) description?: string; + @added(Versions.v2024_02_29_preview) + @doc("Base classifierId on top of which to train the classifier.") + @pattern("^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$") + baseClassifierId?: string; + @doc("List of document types to classify against.") docTypes: Record; } @@ -1295,8 +1342,17 @@ model DocumentClassifierDetails { @doc("API version used to create this document classifier.") apiVersion: string; + @added(Versions.v2024_02_29_preview) + @doc("Base classifierId on top of which the classifier was trained.") + @pattern("^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$") + baseClassifierId?: string; + @doc("List of document types to classify against.") docTypes: Record; + + @added(Versions.v2024_02_29_preview) + @doc("List of warnings encountered while building the classifier.") + warnings?: Warning[]; } @doc("Document classification parameters.") diff --git a/specification/ai/DocumentIntelligence/routes.tsp b/specification/ai/DocumentIntelligence/routes.tsp index 1a7199c0e6e3d..c47544fc1723d 100644 --- a/specification/ai/DocumentIntelligence/routes.tsp +++ b/specification/ai/DocumentIntelligence/routes.tsp @@ -13,11 +13,11 @@ namespace DocumentIntelligence; alias ServiceTraits = NoConditionalRequests & NoRepeatableRequests & - NoClientRequestId; + SupportsClientRequestId; op DocumentIntelligenceOperation< TParams extends TypeSpec.Reflection.Model, - TResponse extends TypeSpec.Reflection.Model + TResponse extends TypeSpec.Reflection.Model & Foundations.RetryAfterHeader > is Foundations.Operation; alias DIResourceOperations = ResourceOperations; @@ -28,11 +28,12 @@ op DocumentIntelligenceLongRunningOperation< TResponse extends TypeSpec.Reflection.Model > is Foundations.Operation< TParams, - AcceptedResponse & { - @pollingLocation - @header("Operation-Location") - operationLocation: ResourceLocation; - }, + AcceptedResponse & + Foundations.RetryAfterHeader & { + @pollingLocation + @header("Operation-Location") + operationLocation: ResourceLocation; + }, ServiceTraits, ErrorResponse >; diff --git a/specification/ai/DocumentIntelligence/tspconfig.yaml b/specification/ai/DocumentIntelligence/tspconfig.yaml index 705bd4803c2b9..b7dcb814a9ea6 100644 --- a/specification/ai/DocumentIntelligence/tspconfig.yaml +++ b/specification/ai/DocumentIntelligence/tspconfig.yaml @@ -15,8 +15,8 @@ options: azure-resource-provider-folder: "data-plane" emitter-output-dir: "{project-root}/.." examples-directory: "examples" + omit-unreachable-types: true output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/DocumentIntelligence.json" - # Uncomment this line and add "@azure-tools/typespec-python" to your package.json to generate Python code "@azure-tools/typespec-python": package-pprint-name: "Azure AI Document Intelligence" package-dir: "azure-ai-documentintelligence" @@ -40,7 +40,6 @@ options: package-dir: "Azure.AI.DocumentIntelligence" namespace: "Azure.AI.DocumentIntelligence" model-namespace: false - # Uncomment this line and add "@azure-tools/typespec-ts" to your package.json to generate Typescript code "@azure-tools/typespec-ts": title: DocumentIntelligence package-dir: "ai-document-intelligence-rest" diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/DocumentIntelligence.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/DocumentIntelligence.json new file mode 100644 index 0000000000000..fd84b272f6dce --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/DocumentIntelligence.json @@ -0,0 +1,4226 @@ +{ + "swagger": "2.0", + "info": { + "title": "Document Intelligence (formerly Form Recognizer)", + "version": "2024-02-29-preview", + "description": "Extracts content, layout, and structured data from documents.", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}/documentintelligence", + "useSchemePrefix": false, + "parameters": [ + { + "name": "endpoint", + "in": "path", + "description": "The Document Intelligence service endpoint.", + "required": true, + "type": "string" + } + ] + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "ApiKeyAuth": [] + }, + { + "OAuth2Auth": [ + "https://cognitiveservices.azure.com/.default" + ] + } + ], + "securityDefinitions": { + "ApiKeyAuth": { + "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": [], + "paths": { + "/documentClassifiers": { + "get": { + "operationId": "DocumentClassifiers_ListClassifiers", + "description": "List all document classifiers.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/PagedDocumentClassifierDetails" + }, + "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/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Document Classifiers": { + "$ref": "./examples/GetDocumentClassifiers.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/documentClassifiers/{classifierId}": { + "get": { + "operationId": "DocumentClassifiers_GetClassifier", + "description": "Gets detailed document classifier information.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "classifierId", + "in": "path", + "description": "Unique document classifier name.", + "required": true, + "type": "string", + "maxLength": 64, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/DocumentClassifierDetails" + }, + "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/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Document Classifier": { + "$ref": "./examples/GetDocumentClassifier.json" + } + } + }, + "delete": { + "operationId": "DocumentClassifiers_DeleteClassifier", + "description": "Deletes document classifier.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "classifierId", + "in": "path", + "description": "Unique document classifier name.", + "required": true, + "type": "string", + "maxLength": 64, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + { + "$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/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete Document Classifier": { + "$ref": "./examples/DeleteDocumentClassifier.json" + } + } + } + }, + "/documentClassifiers/{classifierId}:analyze": { + "post": { + "operationId": "DocumentClassifiers_ClassifyDocumentFromStream", + "description": "Classifies document with document classifier.", + "consumes": [ + "application/octet-stream", + "application/pdf", + "image/jpeg", + "image/png", + "image/tiff", + "image/bmp", + "image/heif", + "text/html", + "application/vnd.openxmlformats-officedocument.wordprocessingml.document", + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "application/vnd.openxmlformats-officedocument.presentationml.presentation" + ], + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/DocumentClassifierAnalyzeRequestParams.classifierId" + }, + { + "$ref": "#/parameters/DocumentClassifierAnalyzeRequestParams.stringIndexType" + }, + { + "$ref": "#/parameters/DocumentClassifierAnalyzeRequestParams.split" + }, + { + "$ref": "#/parameters/AnalyzeFromStreamRequestParams.input" + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "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." + }, + "Operation-Location": { + "type": "string", + "format": "uri", + "description": "The location of an instance of AnalyzeResultOperation" + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Classify Document from Url": { + "$ref": "./examples/ClassifyDocument_Stream.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/documentClassifiers/{classifierId}/analyzeResults/{resultId}": { + "get": { + "operationId": "DocumentClassifiers_GetClassifyResult", + "description": "Gets the result of document classifier.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "classifierId", + "in": "path", + "description": "Unique document classifier name.", + "required": true, + "type": "string", + "maxLength": 64, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result ID.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AnalyzeResultOperation" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Classify Document Result": { + "$ref": "./examples/GetClassifyDocumentResult.json" + } + } + } + }, + "/documentClassifiers:build": { + "post": { + "operationId": "DocumentClassifiers_BuildClassifier", + "description": "Builds a custom document classifier.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "buildRequest", + "in": "body", + "description": "Build request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/BuildDocumentClassifierRequest" + } + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "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." + }, + "Operation-Location": { + "type": "string", + "format": "uri", + "description": "The location of an instance of DocumentClassifierBuildOperationDetails" + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Build Document Classifier": { + "$ref": "./examples/BuildDocumentClassifier.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/documentModels": { + "get": { + "operationId": "DocumentModels_ListModels", + "description": "List all document models", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/PagedDocumentModelDetails" + }, + "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/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Document Models": { + "$ref": "./examples/GetDocumentModels.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/documentModels/{modelId}:analyze": { + "post": { + "operationId": "DocumentModels_AnalyzeDocumentFromStream", + "description": "Analyzes document with document model.", + "consumes": [ + "application/octet-stream", + "application/pdf", + "image/jpeg", + "image/png", + "image/tiff", + "image/bmp", + "image/heif", + "text/html", + "application/vnd.openxmlformats-officedocument.wordprocessingml.document", + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "application/vnd.openxmlformats-officedocument.presentationml.presentation" + ], + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/DocumentModelAnalyzeRequestParams.modelId" + }, + { + "$ref": "#/parameters/DocumentModelAnalyzeRequestParams.pages" + }, + { + "$ref": "#/parameters/DocumentModelAnalyzeRequestParams.locale" + }, + { + "$ref": "#/parameters/DocumentModelAnalyzeRequestParams.stringIndexType" + }, + { + "$ref": "#/parameters/DocumentModelAnalyzeRequestParams.features" + }, + { + "$ref": "#/parameters/DocumentModelAnalyzeRequestParams.queryFields" + }, + { + "$ref": "#/parameters/DocumentModelAnalyzeRequestParams.outputContentFormat" + }, + { + "$ref": "#/parameters/AnalyzeFromStreamRequestParams.input" + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "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." + }, + "Operation-Location": { + "type": "string", + "format": "uri", + "description": "The location of an instance of AnalyzeResultOperation" + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze Document from Url": { + "$ref": "./examples/AnalyzeDocument_Stream.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/documentModels/{modelId}": { + "get": { + "operationId": "DocumentModels_GetModel", + "description": "Gets detailed document model information.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "modelId", + "in": "path", + "description": "Unique document model name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/DocumentModelDetails" + }, + "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/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Custom Document Model": { + "$ref": "./examples/GetDocumentModel_Custom.json" + }, + "Get Prebuilt Document Model": { + "$ref": "./examples/GetDocumentModel_Prebuilt.json" + } + } + }, + "delete": { + "operationId": "DocumentModels_DeleteModel", + "description": "Deletes document model.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "modelId", + "in": "path", + "description": "Unique document model name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + { + "$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/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete Document Model": { + "$ref": "./examples/DeleteDocumentModel.json" + } + } + } + }, + "/documentModels/{modelId}:copyTo": { + "post": { + "operationId": "DocumentModels_CopyModelTo", + "description": "Copies document model to the target resource, region, and modelId.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "modelId", + "in": "path", + "description": "Unique document model name.", + "required": true, + "type": "string", + "maxLength": 64, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + { + "name": "copyToRequest", + "in": "body", + "description": "Copy to request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/CopyAuthorization" + } + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "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." + }, + "Operation-Location": { + "type": "string", + "format": "uri", + "description": "The location of an instance of DocumentModelCopyToOperationDetails" + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Copy Document Model To": { + "$ref": "./examples/CopyDocumentModelTo.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/documentModels/{modelId}/analyzeResults/{resultId}": { + "get": { + "operationId": "DocumentModels_GetAnalyzeResult", + "description": "Gets the result of document analysis.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "modelId", + "in": "path", + "description": "Unique document model name.", + "required": true, + "type": "string", + "maxLength": 64, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + { + "name": "resultId", + "in": "path", + "description": "Analyze operation result ID.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AnalyzeResultOperation" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Analyze Document Result": { + "$ref": "./examples/GetAnalyzeDocumentResult.json" + } + } + } + }, + "/documentModels:authorizeCopy": { + "post": { + "operationId": "DocumentModels_AuthorizeModelCopy", + "description": "Generates authorization to copy a document model to this location with\nspecified modelId and optional description.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "authorizeCopyRequest", + "in": "body", + "description": "Authorize copy request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/AuthorizeCopyRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/CopyAuthorization" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Authorize Copy of Document Model": { + "$ref": "./examples/AuthorizeCopyDocumentModel.json" + } + } + } + }, + "/documentModels:build": { + "post": { + "operationId": "DocumentModels_BuildModel", + "description": "Builds a custom document analysis model.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "buildRequest", + "in": "body", + "description": "Build request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/BuildDocumentModelRequest" + } + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "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." + }, + "Operation-Location": { + "type": "string", + "format": "uri", + "description": "The location of an instance of DocumentModelBuildOperationDetails" + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Build Document Model": { + "$ref": "./examples/BuildDocumentModel.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/documentModels:compose": { + "post": { + "operationId": "DocumentModels_ComposeModel", + "description": "Creates a new document model from document types of existing document models.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "composeRequest", + "in": "body", + "description": "Compose request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/ComposeDocumentModelRequest" + } + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "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." + }, + "Operation-Location": { + "type": "string", + "format": "uri", + "description": "The location of an instance of DocumentModelComposeOperationDetails" + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Compose Document Model": { + "$ref": "./examples/ComposeDocumentModel.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/info": { + "get": { + "operationId": "MiscellaneousOperations_GetResourceInfo", + "description": "Return information about the current resource.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ResourceDetails" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Resource Details": { + "$ref": "./examples/GetResourceDetails.json" + } + } + } + }, + "/operations": { + "get": { + "operationId": "MiscellaneousOperations_ListOperations", + "description": "Lists all operations.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/PagedOperationDetails" + }, + "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/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Operations": { + "$ref": "./examples/GetOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/operations/{operationId}": { + "get": { + "operationId": "MiscellaneousOperations_GetDocumentModelBuildOperation", + "description": "Gets operation info.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/DocumentModelBuildOperationDetails" + }, + "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/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Operation - Document Model Build": { + "$ref": "./examples/GetOperation_DocumentModelBuild.json" + } + } + } + } + }, + "x-ms-paths": { + "/documentClassifiers/{classifierId}:analyze?_overload=classifyDocument": { + "post": { + "operationId": "DocumentClassifiers_ClassifyDocument", + "description": "Classifies document with document classifier.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/DocumentClassifierAnalyzeRequestParams.classifierId" + }, + { + "$ref": "#/parameters/DocumentClassifierAnalyzeRequestParams.stringIndexType" + }, + { + "$ref": "#/parameters/DocumentClassifierAnalyzeRequestParams.split" + }, + { + "name": "classifyRequest", + "in": "body", + "description": "Classify request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/ClassifyDocumentRequest" + } + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "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." + }, + "Operation-Location": { + "type": "string", + "format": "uri", + "description": "The location of an instance of AnalyzeResultOperation" + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Classify Document from Url": { + "$ref": "./examples/ClassifyDocument_Url.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/documentModels/{modelId}:analyze?_overload=analyzeDocument": { + "post": { + "operationId": "DocumentModels_AnalyzeDocument", + "description": "Analyzes document with document model.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/DocumentModelAnalyzeRequestParams.modelId" + }, + { + "$ref": "#/parameters/DocumentModelAnalyzeRequestParams.pages" + }, + { + "$ref": "#/parameters/DocumentModelAnalyzeRequestParams.locale" + }, + { + "$ref": "#/parameters/DocumentModelAnalyzeRequestParams.stringIndexType" + }, + { + "$ref": "#/parameters/DocumentModelAnalyzeRequestParams.features" + }, + { + "$ref": "#/parameters/DocumentModelAnalyzeRequestParams.queryFields" + }, + { + "$ref": "#/parameters/DocumentModelAnalyzeRequestParams.outputContentFormat" + }, + { + "name": "analyzeRequest", + "in": "body", + "description": "Analyze request parameters.", + "required": false, + "schema": { + "$ref": "#/definitions/AnalyzeDocumentRequest" + } + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "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." + }, + "Operation-Location": { + "type": "string", + "format": "uri", + "description": "The location of an instance of AnalyzeResultOperation" + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Analyze Document from Base64": { + "$ref": "./examples/AnalyzeDocument_Base64.json" + }, + "Analyze Document from Url": { + "$ref": "./examples/AnalyzeDocument_Url.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/operations/{operationId}?_overload=getDocumentModelComposeOperation": { + "get": { + "operationId": "MiscellaneousOperations_GetDocumentModelComposeOperation", + "description": "Gets operation info.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/DocumentModelComposeOperationDetails" + }, + "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/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Operation - Document Model Compose": { + "$ref": "./examples/GetOperation_DocumentModelCompose.json" + } + } + } + }, + "/operations/{operationId}?_overload=getDocumentModelCopyToOperation": { + "get": { + "operationId": "MiscellaneousOperations_GetDocumentModelCopyToOperation", + "description": "Gets operation info.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/DocumentModelCopyToOperationDetails" + }, + "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/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Operation - Document Model Copy To": { + "$ref": "./examples/GetOperation_DocumentModelCopyTo.json" + } + } + } + }, + "/operations/{operationId}?_overload=getDocumentClassifierBuildOperation": { + "get": { + "operationId": "MiscellaneousOperations_GetDocumentClassifierBuildOperation", + "description": "Gets operation info.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/DocumentClassifierBuildOperationDetails" + }, + "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/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Operation - Document Classifier Build": { + "$ref": "./examples/GetOperation_DocumentClassifierBuild.json" + } + } + } + }, + "/operations/{operationId}?_overload=getOperation": { + "get": { + "operationId": "MiscellaneousOperations_GetOperation", + "description": "Gets operation info.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation ID", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationDetails" + }, + "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/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Operation": { + "$ref": "./examples/GetOperation.json" + } + } + } + } + }, + "definitions": { + "AddressValue": { + "type": "object", + "description": "Address field value.", + "properties": { + "houseNumber": { + "type": "string", + "description": "House or building number." + }, + "poBox": { + "type": "string", + "description": "Post office box number." + }, + "road": { + "type": "string", + "description": "Street name." + }, + "city": { + "type": "string", + "description": "Name of city, town, village, etc." + }, + "state": { + "type": "string", + "description": "First-level administrative division." + }, + "postalCode": { + "type": "string", + "description": "Postal code used for mail sorting." + }, + "countryRegion": { + "type": "string", + "description": "Country/region." + }, + "streetAddress": { + "type": "string", + "description": "Street-level address, excluding city, state, countryRegion, and postalCode." + }, + "unit": { + "type": "string", + "description": "Apartment or office number" + }, + "cityDistrict": { + "type": "string", + "description": "Districts or boroughs within a city, such as Brooklyn in New York City or City\nof Westminster in London." + }, + "stateDistrict": { + "type": "string", + "description": "Second-level administrative division used in certain locales." + }, + "suburb": { + "type": "string", + "description": "Unofficial neighborhood name, like Chinatown." + }, + "house": { + "type": "string", + "description": "Build name, such as World Trade Center." + }, + "level": { + "type": "string", + "description": "Floor number, such as 3F." + } + } + }, + "AnalyzeDocumentRequest": { + "type": "object", + "description": "Document analysis parameters.", + "properties": { + "urlSource": { + "type": "string", + "format": "uri", + "description": "Document URL to analyze. Either urlSource or base64Source must be specified." + }, + "base64Source": { + "type": "string", + "format": "byte", + "description": "Base64 encoding of the document to analyze. Either urlSource or base64Source\nmust be specified." + } + } + }, + "AnalyzeResult": { + "type": "object", + "description": "Document analysis result.", + "properties": { + "apiVersion": { + "type": "string", + "description": "API version used to produce this result." + }, + "modelId": { + "type": "string", + "description": "Document model ID used to produce this result.", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + "stringIndexType": { + "$ref": "#/definitions/StringIndexType", + "description": "Method used to compute string offset and length." + }, + "contentFormat": { + "$ref": "#/definitions/ContentFormat", + "description": "Format of the analyze result top-level content." + }, + "content": { + "type": "string", + "description": "Concatenate string representation of all textual and visual elements in reading\norder." + }, + "pages": { + "type": "array", + "description": "Analyzed pages.", + "items": { + "$ref": "#/definitions/DocumentPage" + }, + "x-ms-identifiers": [] + }, + "paragraphs": { + "type": "array", + "description": "Extracted paragraphs.", + "items": { + "$ref": "#/definitions/DocumentParagraph" + }, + "x-ms-identifiers": [] + }, + "tables": { + "type": "array", + "description": "Extracted tables.", + "items": { + "$ref": "#/definitions/DocumentTable" + }, + "x-ms-identifiers": [] + }, + "figures": { + "type": "array", + "description": "Extracted figures.", + "items": { + "$ref": "#/definitions/DocumentFigure" + }, + "x-ms-identifiers": [] + }, + "lists": { + "type": "array", + "description": "Extracted lists.", + "items": { + "$ref": "#/definitions/DocumentList" + }, + "x-ms-identifiers": [] + }, + "sections": { + "type": "array", + "description": "Extracted sections.", + "items": { + "$ref": "#/definitions/DocumentSection" + }, + "x-ms-identifiers": [] + }, + "keyValuePairs": { + "type": "array", + "description": "Extracted key-value pairs.", + "items": { + "$ref": "#/definitions/DocumentKeyValuePair" + }, + "x-ms-identifiers": [] + }, + "styles": { + "type": "array", + "description": "Extracted font styles.", + "items": { + "$ref": "#/definitions/DocumentStyle" + }, + "x-ms-identifiers": [] + }, + "languages": { + "type": "array", + "description": "Detected languages.", + "items": { + "$ref": "#/definitions/DocumentLanguage" + }, + "x-ms-identifiers": [] + }, + "documents": { + "type": "array", + "description": "Extracted documents.", + "items": { + "$ref": "#/definitions/Document" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "apiVersion", + "modelId", + "stringIndexType", + "content", + "pages" + ] + }, + "AnalyzeResultOperation": { + "type": "object", + "description": "Status and result of the analyze operation.", + "properties": { + "status": { + "$ref": "#/definitions/OperationStatus", + "description": "Operation status. notStarted, running, succeeded, or failed" + }, + "createdDateTime": { + "type": "string", + "format": "date-time", + "description": "Date and time (UTC) when the analyze operation was submitted." + }, + "lastUpdatedDateTime": { + "type": "string", + "format": "date-time", + "description": "Date and time (UTC) when the status was last updated." + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Encountered error during document analysis." + }, + "analyzeResult": { + "$ref": "#/definitions/AnalyzeResult", + "description": "Document analysis result." + } + }, + "required": [ + "status", + "createdDateTime", + "lastUpdatedDateTime" + ] + }, + "AuthorizeCopyRequest": { + "type": "object", + "description": "Request body to authorize document model copy.", + "properties": { + "modelId": { + "type": "string", + "description": "Unique document model name.", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + "description": { + "type": "string", + "description": "Document model description.", + "maxLength": 4096 + }, + "tags": { + "type": "object", + "description": "List of key-value tag attributes associated with the document model.", + "additionalProperties": { + "type": "string" + } + } + }, + "required": [ + "modelId" + ] + }, + "AzureBlobContentSource": { + "type": "object", + "description": "Azure Blob Storage content.", + "properties": { + "containerUrl": { + "type": "string", + "format": "uri", + "description": "Azure Blob Storage container URL." + }, + "prefix": { + "type": "string", + "description": "Blob name prefix." + } + }, + "required": [ + "containerUrl" + ] + }, + "AzureBlobFileListContentSource": { + "type": "object", + "description": "File list in Azure Blob Storage.", + "properties": { + "containerUrl": { + "type": "string", + "format": "uri", + "description": "Azure Blob Storage container URL." + }, + "fileList": { + "type": "string", + "description": "Path to a JSONL file within the container specifying a subset of documents." + } + }, + "required": [ + "containerUrl", + "fileList" + ] + }, + "BoundingRegion": { + "type": "object", + "description": "Bounding polygon on a specific page of the input.", + "properties": { + "pageNumber": { + "type": "integer", + "format": "int32", + "description": "1-based page number of page containing the bounding region.", + "minimum": 1 + }, + "polygon": { + "type": "array", + "description": "Bounding polygon on the page, or the entire page if not specified.\nCoordinates specified relative to the top-left of the page. The numbers\nrepresent the x, y values of the polygon vertices, clockwise from the left\n(-180 degrees inclusive) relative to the element orientation.", + "items": { + "type": "number", + "format": "float" + } + } + }, + "required": [ + "pageNumber", + "polygon" + ] + }, + "BuildDocumentClassifierRequest": { + "type": "object", + "description": "Request body to build a new custom document classifier.", + "properties": { + "classifierId": { + "type": "string", + "description": "Unique document classifier name.", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + "description": { + "type": "string", + "description": "Document classifier description.", + "maxLength": 4096 + }, + "baseClassifierId": { + "type": "string", + "description": "Base classifierId on top of which to train the classifier.", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + "docTypes": { + "type": "object", + "description": "List of document types to classify against.", + "additionalProperties": { + "$ref": "#/definitions/ClassifierDocumentTypeDetails" + } + } + }, + "required": [ + "classifierId", + "docTypes" + ] + }, + "BuildDocumentModelRequest": { + "type": "object", + "description": "Request body to build a new custom document model.", + "properties": { + "modelId": { + "type": "string", + "description": "Unique document model name.", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + "description": { + "type": "string", + "description": "Document model description.", + "maxLength": 4096 + }, + "buildMode": { + "$ref": "#/definitions/DocumentBuildMode", + "description": "Custom document model build mode." + }, + "azureBlobSource": { + "$ref": "#/definitions/AzureBlobContentSource", + "description": "Azure Blob Storage location containing the training data. Either\nazureBlobSource or azureBlobFileListSource must be specified." + }, + "azureBlobFileListSource": { + "$ref": "#/definitions/AzureBlobFileListContentSource", + "description": "Azure Blob Storage file list specifying the training data. Either\nazureBlobSource or azureBlobFileListSource must be specified." + }, + "tags": { + "type": "object", + "description": "List of key-value tag attributes associated with the document model.", + "additionalProperties": { + "type": "string" + } + } + }, + "required": [ + "modelId", + "buildMode" + ] + }, + "ClassifierDocumentTypeDetails": { + "type": "object", + "description": "Classifier document type info.", + "properties": { + "sourceKind": { + "$ref": "#/definitions/ContentSourceKind", + "description": "Type of training data source." + }, + "azureBlobSource": { + "$ref": "#/definitions/AzureBlobContentSource", + "description": "Azure Blob Storage location containing the training data for a classifier\ndocument type. Either azureBlobSource or azureBlobFileListSource must be\nspecified." + }, + "azureBlobFileListSource": { + "$ref": "#/definitions/AzureBlobFileListContentSource", + "description": "Azure Blob Storage file list specifying the training data for a classifier\ndocument type. Either azureBlobSource or azureBlobFileListSource must be\nspecified." + } + } + }, + "ClassifyDocumentRequest": { + "type": "object", + "description": "Document classification parameters.", + "properties": { + "urlSource": { + "type": "string", + "format": "uri", + "description": "Document URL to classify. Either urlSource or base64Source must be specified." + }, + "base64Source": { + "type": "string", + "format": "byte", + "description": "Base64 encoding of the document to classify. Either urlSource or base64Source\nmust be specified." + } + } + }, + "ComponentDocumentModelDetails": { + "type": "object", + "description": "A component of a composed document model.", + "properties": { + "modelId": { + "type": "string", + "description": "Unique document model name.", + "maxLength": 64, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + } + }, + "required": [ + "modelId" + ] + }, + "ComposeDocumentModelRequest": { + "type": "object", + "description": "Request body to create a composed document model from component document models.", + "properties": { + "modelId": { + "type": "string", + "description": "Unique document model name.", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + "description": { + "type": "string", + "description": "Document model description.", + "maxLength": 4096 + }, + "componentModels": { + "type": "array", + "description": "List of component document models to compose.", + "items": { + "$ref": "#/definitions/ComponentDocumentModelDetails" + }, + "x-ms-identifiers": [] + }, + "tags": { + "type": "object", + "description": "List of key-value tag attributes associated with the document model.", + "additionalProperties": { + "type": "string" + } + } + }, + "required": [ + "modelId", + "componentModels" + ] + }, + "ContentFormat": { + "type": "string", + "description": "Format of the content in analyzed result.", + "enum": [ + "text", + "markdown" + ], + "x-ms-enum": { + "name": "ContentFormat", + "modelAsString": true, + "values": [ + { + "name": "text", + "value": "text", + "description": "Plain text representation of the document content without any formatting." + }, + { + "name": "markdown", + "value": "markdown", + "description": "Markdown representation of the document content with section headings, tables,\netc." + } + ] + } + }, + "ContentSourceKind": { + "type": "string", + "description": "Type of content source.", + "enum": [ + "url", + "base64", + "azureBlob", + "azureBlobFileList" + ], + "x-ms-enum": { + "name": "ContentSourceKind", + "modelAsString": true, + "values": [ + { + "name": "url", + "value": "url", + "description": "Content at a specific URL." + }, + { + "name": "base64", + "value": "base64", + "description": "Content represented via Base64 encoding." + }, + { + "name": "azureBlob", + "value": "azureBlob", + "description": "Files in a path within an Azure Blob Storage container." + }, + { + "name": "azureBlobFileList", + "value": "azureBlobFileList", + "description": "A file list specifying individual files in an Azure Blob Storage container." + } + ] + } + }, + "CopyAuthorization": { + "type": "object", + "description": "Authorization to copy a document model to the specified target resource and\nmodelId.", + "properties": { + "targetResourceId": { + "type": "string", + "description": "ID of the target Azure resource where the document model should be copied to.", + "x-ms-azure-resource": true + }, + "targetResourceRegion": { + "type": "string", + "description": "Location of the target Azure resource where the document model should be copied\nto." + }, + "targetModelId": { + "type": "string", + "description": "Identifier of the target document model.", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + "targetModelLocation": { + "type": "string", + "format": "uri", + "description": "URL of the copied document model in the target account." + }, + "accessToken": { + "type": "string", + "description": "Token used to authorize the request." + }, + "expirationDateTime": { + "type": "string", + "format": "date-time", + "description": "Date/time when the access token expires." + } + }, + "required": [ + "targetResourceId", + "targetResourceRegion", + "targetModelId", + "targetModelLocation", + "accessToken", + "expirationDateTime" + ] + }, + "CurrencyValue": { + "type": "object", + "description": "Currency field value.", + "properties": { + "amount": { + "type": "number", + "format": "double", + "description": "Currency amount." + }, + "currencySymbol": { + "type": "string", + "description": "Currency symbol label, if any." + }, + "currencyCode": { + "type": "string", + "description": "Resolved currency code (ISO 4217), if any." + } + }, + "required": [ + "amount" + ] + }, + "CustomDocumentModelsDetails": { + "type": "object", + "description": "Details regarding custom document models.", + "properties": { + "count": { + "type": "integer", + "format": "int32", + "description": "Number of custom document models in the current resource." + }, + "limit": { + "type": "integer", + "format": "int32", + "description": "Maximum number of custom document models supported in the current resource." + } + }, + "required": [ + "count", + "limit" + ] + }, + "Document": { + "type": "object", + "description": "An object describing the location and semantic content of a document.", + "properties": { + "docType": { + "type": "string", + "description": "Document type.", + "minLength": 2, + "maxLength": 64 + }, + "boundingRegions": { + "type": "array", + "description": "Bounding regions covering the document.", + "items": { + "$ref": "#/definitions/BoundingRegion" + }, + "x-ms-identifiers": [] + }, + "spans": { + "type": "array", + "description": "Location of the document in the reading order concatenated content.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + }, + "fields": { + "type": "object", + "description": "Dictionary of named field values.", + "additionalProperties": { + "$ref": "#/definitions/DocumentField" + } + }, + "confidence": { + "type": "number", + "format": "float", + "description": "Confidence of correctly extracting the document.", + "minimum": 0, + "maximum": 1 + } + }, + "required": [ + "docType", + "spans", + "confidence" + ] + }, + "DocumentBarcode": { + "type": "object", + "description": "A barcode object.", + "properties": { + "kind": { + "$ref": "#/definitions/DocumentBarcodeKind", + "description": "Barcode kind." + }, + "value": { + "type": "string", + "description": "Barcode value." + }, + "polygon": { + "type": "array", + "description": "Bounding polygon of the barcode, with coordinates specified relative to the\ntop-left of the page. The numbers represent the x, y values of the polygon\nvertices, clockwise from the left (-180 degrees inclusive) relative to the\nelement orientation.", + "items": { + "type": "number", + "format": "float" + } + }, + "span": { + "$ref": "#/definitions/DocumentSpan", + "description": "Location of the barcode in the reading order concatenated content." + }, + "confidence": { + "type": "number", + "format": "float", + "description": "Confidence of correctly extracting the barcode.", + "minimum": 0, + "maximum": 1 + } + }, + "required": [ + "kind", + "value", + "span", + "confidence" + ] + }, + "DocumentBarcodeKind": { + "type": "string", + "description": "Barcode kind.", + "enum": [ + "QRCode", + "PDF417", + "UPCA", + "UPCE", + "Code39", + "Code128", + "EAN8", + "EAN13", + "DataBar", + "Code93", + "Codabar", + "DataBarExpanded", + "ITF", + "MicroQRCode", + "Aztec", + "DataMatrix", + "MaxiCode" + ], + "x-ms-enum": { + "name": "DocumentBarcodeKind", + "modelAsString": true, + "values": [ + { + "name": "QRCode", + "value": "QRCode", + "description": "QR code, as defined in ISO/IEC 18004:2015." + }, + { + "name": "PDF417", + "value": "PDF417", + "description": "PDF417, as defined in ISO 15438." + }, + { + "name": "UPCA", + "value": "UPCA", + "description": "GS1 12-digit Universal Product Code." + }, + { + "name": "UPCE", + "value": "UPCE", + "description": "GS1 6-digit Universal Product Code." + }, + { + "name": "Code39", + "value": "Code39", + "description": "Code 39 barcode, as defined in ISO/IEC 16388:2007." + }, + { + "name": "Code128", + "value": "Code128", + "description": "Code 128 barcode, as defined in ISO/IEC 15417:2007." + }, + { + "name": "EAN8", + "value": "EAN8", + "description": "GS1 8-digit International Article Number (European Article Number)." + }, + { + "name": "EAN13", + "value": "EAN13", + "description": "GS1 13-digit International Article Number (European Article Number)." + }, + { + "name": "DataBar", + "value": "DataBar", + "description": "GS1 DataBar barcode." + }, + { + "name": "Code93", + "value": "Code93", + "description": "Code 93 barcode, as defined in ANSI/AIM BC5-1995." + }, + { + "name": "Codabar", + "value": "Codabar", + "description": "Codabar barcode, as defined in ANSI/AIM BC3-1995." + }, + { + "name": "DataBarExpanded", + "value": "DataBarExpanded", + "description": "GS1 DataBar Expanded barcode." + }, + { + "name": "ITF", + "value": "ITF", + "description": "Interleaved 2 of 5 barcode, as defined in ANSI/AIM BC2-1995." + }, + { + "name": "MicroQRCode", + "value": "MicroQRCode", + "description": "Micro QR code, as defined in ISO/IEC 23941:2022." + }, + { + "name": "Aztec", + "value": "Aztec", + "description": "Aztec code, as defined in ISO/IEC 24778:2008." + }, + { + "name": "DataMatrix", + "value": "DataMatrix", + "description": "Data matrix code, as defined in ISO/IEC 16022:2006." + }, + { + "name": "MaxiCode", + "value": "MaxiCode", + "description": "MaxiCode, as defined in ISO/IEC 16023:2000." + } + ] + } + }, + "DocumentBuildMode": { + "type": "string", + "description": "Custom document model build mode.", + "enum": [ + "template", + "neural" + ], + "x-ms-enum": { + "name": "DocumentBuildMode", + "modelAsString": true, + "values": [ + { + "name": "template", + "value": "template", + "description": "Target documents with similar visual templates." + }, + { + "name": "neural", + "value": "neural", + "description": "Support documents with diverse visual templates." + } + ] + } + }, + "DocumentCaption": { + "type": "object", + "description": "A caption object describing a table or figure.", + "properties": { + "content": { + "type": "string", + "description": "Content of the caption." + }, + "boundingRegions": { + "type": "array", + "description": "Bounding regions covering the caption.", + "items": { + "$ref": "#/definitions/BoundingRegion" + }, + "x-ms-identifiers": [] + }, + "spans": { + "type": "array", + "description": "Location of the caption in the reading order concatenated content.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + }, + "elements": { + "type": "array", + "description": "Child elements of the caption.", + "items": { + "$ref": "#/definitions/DocumentElement" + } + } + }, + "required": [ + "content", + "spans" + ] + }, + "DocumentClassifierBuildOperationDetails": { + "type": "object", + "description": "Get Operation response object.", + "properties": { + "result": { + "$ref": "#/definitions/DocumentClassifierDetails", + "description": "Operation result upon success." + } + }, + "allOf": [ + { + "$ref": "#/definitions/OperationDetails" + } + ], + "x-ms-discriminator-value": "documentClassifierBuild" + }, + "DocumentClassifierDetails": { + "type": "object", + "description": "Document classifier info.", + "properties": { + "classifierId": { + "type": "string", + "description": "Unique document classifier name.", + "maxLength": 64, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "description": { + "type": "string", + "description": "Document classifier description.", + "maxLength": 4096 + }, + "createdDateTime": { + "type": "string", + "format": "date-time", + "description": "Date and time (UTC) when the document classifier was created." + }, + "expirationDateTime": { + "type": "string", + "format": "date-time", + "description": "Date and time (UTC) when the document classifier will expire." + }, + "apiVersion": { + "type": "string", + "description": "API version used to create this document classifier." + }, + "baseClassifierId": { + "type": "string", + "description": "Base classifierId on top of which the classifier was trained.", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$" + }, + "docTypes": { + "type": "object", + "description": "List of document types to classify against.", + "additionalProperties": { + "$ref": "#/definitions/ClassifierDocumentTypeDetails" + } + }, + "warnings": { + "type": "array", + "description": "List of warnings encountered while building the classifier.", + "items": { + "$ref": "#/definitions/Warning" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "classifierId", + "createdDateTime", + "apiVersion", + "docTypes" + ] + }, + "DocumentElement": { + "type": "string", + "description": "An JSON pointer referencing an element of the document, such as paragraph,\ntable, section, etc." + }, + "DocumentField": { + "type": "object", + "description": "An object representing the content and location of a field value.", + "properties": { + "type": { + "$ref": "#/definitions/DocumentFieldType", + "description": "Data type of the field value." + }, + "valueString": { + "type": "string", + "description": "String value." + }, + "valueDate": { + "type": "string", + "format": "date", + "description": "Date value in YYYY-MM-DD format (ISO 8601)." + }, + "valueTime": { + "type": "string", + "format": "time", + "description": "Time value in hh:mm:ss format (ISO 8601)." + }, + "valuePhoneNumber": { + "type": "string", + "description": "Phone number value in E.164 format (ex. +19876543210)." + }, + "valueNumber": { + "type": "number", + "format": "double", + "description": "Floating point value." + }, + "valueInteger": { + "type": "integer", + "format": "int64", + "description": "Integer value." + }, + "valueSelectionMark": { + "$ref": "#/definitions/DocumentSelectionMarkState", + "description": "Selection mark value." + }, + "valueSignature": { + "$ref": "#/definitions/DocumentSignatureType", + "description": "Presence of signature." + }, + "valueCountryRegion": { + "type": "string", + "description": "3-letter country code value (ISO 3166-1 alpha-3)." + }, + "valueArray": { + "type": "array", + "description": "Array of field values.", + "items": { + "$ref": "#/definitions/DocumentField" + }, + "x-ms-identifiers": [] + }, + "valueObject": { + "type": "object", + "description": "Dictionary of named field values.", + "additionalProperties": { + "$ref": "#/definitions/DocumentField" + } + }, + "valueCurrency": { + "$ref": "#/definitions/CurrencyValue", + "description": "Currency value." + }, + "valueAddress": { + "$ref": "#/definitions/AddressValue", + "description": "Address value." + }, + "valueBoolean": { + "type": "boolean", + "description": "Boolean value." + }, + "valueSelectionGroup": { + "type": "array", + "description": "Selection group value.", + "items": { + "type": "string" + } + }, + "content": { + "type": "string", + "description": "Field content." + }, + "boundingRegions": { + "type": "array", + "description": "Bounding regions covering the field.", + "items": { + "$ref": "#/definitions/BoundingRegion" + }, + "x-ms-identifiers": [] + }, + "spans": { + "type": "array", + "description": "Location of the field in the reading order concatenated content.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + }, + "confidence": { + "type": "number", + "format": "float", + "description": "Confidence of correctly extracting the field.", + "minimum": 0, + "maximum": 1 + } + }, + "required": [ + "type" + ] + }, + "DocumentFieldSchema": { + "type": "object", + "description": "Description of the field semantic schema using a JSON Schema style syntax.", + "properties": { + "type": { + "$ref": "#/definitions/DocumentFieldType", + "description": "Semantic data type of the field value." + }, + "description": { + "type": "string", + "description": "Field description.", + "maxLength": 4096 + }, + "example": { + "type": "string", + "description": "Example field content." + }, + "items": { + "$ref": "#/definitions/DocumentFieldSchema", + "description": "Field type schema of each array element." + }, + "properties": { + "type": "object", + "description": "Named sub-fields of the object field.", + "additionalProperties": { + "$ref": "#/definitions/DocumentFieldSchema" + } + } + }, + "required": [ + "type" + ] + }, + "DocumentFieldType": { + "type": "string", + "description": "Semantic data type of the field value.", + "enum": [ + "string", + "date", + "time", + "phoneNumber", + "number", + "integer", + "selectionMark", + "countryRegion", + "signature", + "array", + "object", + "currency", + "address", + "boolean", + "selectionGroup" + ], + "x-ms-enum": { + "name": "DocumentFieldType", + "modelAsString": true, + "values": [ + { + "name": "string", + "value": "string", + "description": "Plain text." + }, + { + "name": "date", + "value": "date", + "description": "Date, normalized to ISO 8601 (YYYY-MM-DD) format." + }, + { + "name": "time", + "value": "time", + "description": "Time, normalized to ISO 8601 (hh:mm:ss) format." + }, + { + "name": "phoneNumber", + "value": "phoneNumber", + "description": "Phone number, normalized to E.164 (+{CountryCode}{SubscriberNumber}) format." + }, + { + "name": "number", + "value": "number", + "description": "Floating point number, normalized to double precision floating point." + }, + { + "name": "integer", + "value": "integer", + "description": "Integer number, normalized to 64-bit signed integer." + }, + { + "name": "selectionMark", + "value": "selectionMark", + "description": "Is field selected?" + }, + { + "name": "countryRegion", + "value": "countryRegion", + "description": "Country/region, normalized to ISO 3166-1 alpha-3 format (ex. USA)." + }, + { + "name": "signature", + "value": "signature", + "description": "Is signature present?" + }, + { + "name": "array", + "value": "array", + "description": "List of subfields of the same type." + }, + { + "name": "object", + "value": "object", + "description": "Named list of subfields of potentially different types." + }, + { + "name": "currency", + "value": "currency", + "description": "Currency amount with optional currency symbol and unit." + }, + { + "name": "address", + "value": "address", + "description": "Parsed address." + }, + { + "name": "boolean", + "value": "boolean", + "description": "Boolean value, normalized to true or false." + }, + { + "name": "selectionGroup", + "value": "selectionGroup", + "description": "Array of selected string values." + } + ] + } + }, + "DocumentFigure": { + "type": "object", + "description": "An object representing a figure in the document.", + "properties": { + "boundingRegions": { + "type": "array", + "description": "Bounding regions covering the figure.", + "items": { + "$ref": "#/definitions/BoundingRegion" + }, + "x-ms-identifiers": [] + }, + "spans": { + "type": "array", + "description": "Location of the figure in the reading order concatenated content.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + }, + "elements": { + "type": "array", + "description": "Child elements of the figure, excluding any caption or footnotes.", + "items": { + "$ref": "#/definitions/DocumentElement" + } + }, + "caption": { + "$ref": "#/definitions/DocumentCaption", + "description": "Caption associated with the figure." + }, + "footnotes": { + "type": "array", + "description": "List of footnotes associated with the figure.", + "items": { + "$ref": "#/definitions/DocumentFootnote" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "spans" + ] + }, + "DocumentFootnote": { + "type": "object", + "description": "A footnote object describing a table or figure.", + "properties": { + "content": { + "type": "string", + "description": "Content of the footnote." + }, + "boundingRegions": { + "type": "array", + "description": "Bounding regions covering the footnote.", + "items": { + "$ref": "#/definitions/BoundingRegion" + }, + "x-ms-identifiers": [] + }, + "spans": { + "type": "array", + "description": "Location of the footnote in the reading order concatenated content.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + }, + "elements": { + "type": "array", + "description": "Child elements of the footnote.", + "items": { + "$ref": "#/definitions/DocumentElement" + } + } + }, + "required": [ + "content", + "spans" + ] + }, + "DocumentFormula": { + "type": "object", + "description": "A formula object.", + "properties": { + "kind": { + "$ref": "#/definitions/DocumentFormulaKind", + "description": "Formula kind." + }, + "value": { + "type": "string", + "description": "LaTex expression describing the formula." + }, + "polygon": { + "type": "array", + "description": "Bounding polygon of the formula, with coordinates specified relative to the\ntop-left of the page. The numbers represent the x, y values of the polygon\nvertices, clockwise from the left (-180 degrees inclusive) relative to the\nelement orientation.", + "items": { + "type": "number", + "format": "float" + } + }, + "span": { + "$ref": "#/definitions/DocumentSpan", + "description": "Location of the formula in the reading order concatenated content." + }, + "confidence": { + "type": "number", + "format": "float", + "description": "Confidence of correctly extracting the formula.", + "minimum": 0, + "maximum": 1 + } + }, + "required": [ + "kind", + "value", + "span", + "confidence" + ] + }, + "DocumentFormulaKind": { + "type": "string", + "description": "Formula kind.", + "enum": [ + "inline", + "display" + ], + "x-ms-enum": { + "name": "DocumentFormulaKind", + "modelAsString": true, + "values": [ + { + "name": "inline", + "value": "inline", + "description": "A formula embedded within the content of a paragraph." + }, + { + "name": "display", + "value": "display", + "description": "A formula in display mode that takes up an entire line." + } + ] + } + }, + "DocumentKeyValueElement": { + "type": "object", + "description": "An object representing the field key or value in a key-value pair.", + "properties": { + "content": { + "type": "string", + "description": "Concatenated content of the key-value element in reading order." + }, + "boundingRegions": { + "type": "array", + "description": "Bounding regions covering the key-value element.", + "items": { + "$ref": "#/definitions/BoundingRegion" + }, + "x-ms-identifiers": [] + }, + "spans": { + "type": "array", + "description": "Location of the key-value element in the reading order concatenated content.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "content", + "spans" + ] + }, + "DocumentKeyValuePair": { + "type": "object", + "description": "An object representing a form field with distinct field label (key) and field\nvalue (may be empty).", + "properties": { + "key": { + "$ref": "#/definitions/DocumentKeyValueElement", + "description": "Field label of the key-value pair." + }, + "value": { + "$ref": "#/definitions/DocumentKeyValueElement", + "description": "Field value of the key-value pair." + }, + "confidence": { + "type": "number", + "format": "float", + "description": "Confidence of correctly extracting the key-value pair.", + "minimum": 0, + "maximum": 1 + } + }, + "required": [ + "key", + "confidence" + ] + }, + "DocumentLanguage": { + "type": "object", + "description": "An object representing the detected language for a given text span.", + "properties": { + "locale": { + "type": "string", + "description": "Detected language. Value may an ISO 639-1 language code (ex. \"en\", \"fr\")\nor BCP 47 language tag (ex. \"zh-Hans\")." + }, + "spans": { + "type": "array", + "description": "Location of the text elements in the concatenated content the language applies\nto.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + }, + "confidence": { + "type": "number", + "format": "float", + "description": "Confidence of correctly identifying the language.", + "minimum": 0, + "maximum": 1 + } + }, + "required": [ + "locale", + "spans", + "confidence" + ] + }, + "DocumentLine": { + "type": "object", + "description": "A content line object consisting of an adjacent sequence of content elements,\nsuch as words and selection marks.", + "properties": { + "content": { + "type": "string", + "description": "Concatenated content of the contained elements in reading order." + }, + "polygon": { + "type": "array", + "description": "Bounding polygon of the line, with coordinates specified relative to the\ntop-left of the page. The numbers represent the x, y values of the polygon\nvertices, clockwise from the left (-180 degrees inclusive) relative to the\nelement orientation.", + "items": { + "type": "number", + "format": "float" + } + }, + "spans": { + "type": "array", + "description": "Location of the line in the reading order concatenated content.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "content", + "spans" + ] + }, + "DocumentList": { + "type": "object", + "description": "An object representing a list in the document.", + "properties": { + "spans": { + "type": "array", + "description": "Location of the list in the reading order concatenated content.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + }, + "items": { + "type": "array", + "description": "Items in the list.", + "items": { + "$ref": "#/definitions/DocumentListItem" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "spans", + "items" + ] + }, + "DocumentListItem": { + "type": "object", + "description": "An object representing a list item in the document.", + "properties": { + "level": { + "type": "integer", + "format": "int32", + "description": "Level of the list item (1-indexed).", + "minimum": 1 + }, + "content": { + "type": "string", + "description": "Content of the list item." + }, + "boundingRegions": { + "type": "array", + "description": "Bounding regions covering the list item.", + "items": { + "$ref": "#/definitions/BoundingRegion" + }, + "x-ms-identifiers": [] + }, + "spans": { + "type": "array", + "description": "Location of the list item in the reading order concatenated content.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + }, + "elements": { + "type": "array", + "description": "Child elements of the list item.", + "items": { + "$ref": "#/definitions/DocumentElement" + } + } + }, + "required": [ + "level", + "content", + "spans" + ] + }, + "DocumentModelBuildOperationDetails": { + "type": "object", + "description": "Get Operation response object.", + "properties": { + "result": { + "$ref": "#/definitions/DocumentModelDetails", + "description": "Operation result upon success." + } + }, + "allOf": [ + { + "$ref": "#/definitions/OperationDetails" + } + ], + "x-ms-discriminator-value": "documentModelBuild" + }, + "DocumentModelComposeOperationDetails": { + "type": "object", + "description": "Get Operation response object.", + "properties": { + "result": { + "$ref": "#/definitions/DocumentModelDetails", + "description": "Operation result upon success." + } + }, + "allOf": [ + { + "$ref": "#/definitions/OperationDetails" + } + ], + "x-ms-discriminator-value": "documentModelCompose" + }, + "DocumentModelCopyToOperationDetails": { + "type": "object", + "description": "Get Operation response object.", + "properties": { + "result": { + "$ref": "#/definitions/DocumentModelDetails", + "description": "Operation result upon success." + } + }, + "allOf": [ + { + "$ref": "#/definitions/OperationDetails" + } + ], + "x-ms-discriminator-value": "documentModelCopyTo" + }, + "DocumentModelDetails": { + "type": "object", + "description": "Document model info.", + "properties": { + "modelId": { + "type": "string", + "description": "Unique document model name.", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "description": { + "type": "string", + "description": "Document model description.", + "maxLength": 4096 + }, + "createdDateTime": { + "type": "string", + "format": "date-time", + "description": "Date and time (UTC) when the document model was created." + }, + "expirationDateTime": { + "type": "string", + "format": "date-time", + "description": "Date and time (UTC) when the document model will expire." + }, + "apiVersion": { + "type": "string", + "description": "API version used to create this document model." + }, + "tags": { + "type": "object", + "description": "List of key-value tag attributes associated with the document model.", + "additionalProperties": { + "type": "string" + } + }, + "buildMode": { + "$ref": "#/definitions/DocumentBuildMode", + "description": "Custom document model build mode." + }, + "azureBlobSource": { + "$ref": "#/definitions/AzureBlobContentSource", + "description": "Azure Blob Storage location containing the training data. Either\nazureBlobSource or azureBlobFileListSource must be specified." + }, + "azureBlobFileListSource": { + "$ref": "#/definitions/AzureBlobFileListContentSource", + "description": "Azure Blob Storage file list specifying the training data. Either\nazureBlobSource or azureBlobFileListSource must be specified." + }, + "docTypes": { + "type": "object", + "description": "Supported document types.", + "additionalProperties": { + "$ref": "#/definitions/DocumentTypeDetails" + } + }, + "warnings": { + "type": "array", + "description": "List of warnings encountered while building the model.", + "items": { + "$ref": "#/definitions/Warning" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "modelId", + "createdDateTime" + ] + }, + "DocumentPage": { + "type": "object", + "description": "Content and layout elements extracted from a page from the input.", + "properties": { + "pageNumber": { + "type": "integer", + "format": "int32", + "description": "1-based page number in the input document.", + "minimum": 1 + }, + "angle": { + "type": "number", + "format": "float", + "description": "The general orientation of the content in clockwise direction, measured in\ndegrees between (-180, 180].", + "maximum": 180 + }, + "width": { + "type": "number", + "format": "float", + "description": "The width of the image/PDF in pixels/inches, respectively.", + "minimum": 0 + }, + "height": { + "type": "number", + "format": "float", + "description": "The height of the image/PDF in pixels/inches, respectively.", + "minimum": 0 + }, + "unit": { + "$ref": "#/definitions/LengthUnit", + "description": "The unit used by the width, height, and polygon properties. For images, the\nunit is \"pixel\". For PDF, the unit is \"inch\"." + }, + "spans": { + "type": "array", + "description": "Location of the page in the reading order concatenated content.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + }, + "words": { + "type": "array", + "description": "Extracted words from the page.", + "items": { + "$ref": "#/definitions/DocumentWord" + }, + "x-ms-identifiers": [] + }, + "selectionMarks": { + "type": "array", + "description": "Extracted selection marks from the page.", + "items": { + "$ref": "#/definitions/DocumentSelectionMark" + }, + "x-ms-identifiers": [] + }, + "lines": { + "type": "array", + "description": "Extracted lines from the page, potentially containing both textual and visual\nelements.", + "items": { + "$ref": "#/definitions/DocumentLine" + }, + "x-ms-identifiers": [] + }, + "barcodes": { + "type": "array", + "description": "Extracted barcodes from the page.", + "items": { + "$ref": "#/definitions/DocumentBarcode" + }, + "x-ms-identifiers": [] + }, + "formulas": { + "type": "array", + "description": "Extracted formulas from the page.", + "items": { + "$ref": "#/definitions/DocumentFormula" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "pageNumber", + "spans" + ] + }, + "DocumentParagraph": { + "type": "object", + "description": "A paragraph object consisting with contiguous lines generally with common\nalignment and spacing.", + "properties": { + "role": { + "$ref": "#/definitions/ParagraphRole", + "description": "Semantic role of the paragraph." + }, + "content": { + "type": "string", + "description": "Concatenated content of the paragraph in reading order." + }, + "boundingRegions": { + "type": "array", + "description": "Bounding regions covering the paragraph.", + "items": { + "$ref": "#/definitions/BoundingRegion" + }, + "x-ms-identifiers": [] + }, + "spans": { + "type": "array", + "description": "Location of the paragraph in the reading order concatenated content.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "content", + "spans" + ] + }, + "DocumentSection": { + "type": "object", + "description": "An object representing a section in the document.", + "properties": { + "spans": { + "type": "array", + "description": "Location of the section in the reading order concatenated content.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + }, + "elements": { + "type": "array", + "description": "Child elements of the section.", + "items": { + "$ref": "#/definitions/DocumentElement" + } + } + }, + "required": [ + "spans" + ] + }, + "DocumentSelectionMark": { + "type": "object", + "description": "A selection mark object representing check boxes, radio buttons, and other\nelements indicating a selection.", + "properties": { + "state": { + "$ref": "#/definitions/DocumentSelectionMarkState", + "description": "State of the selection mark." + }, + "polygon": { + "type": "array", + "description": "Bounding polygon of the selection mark, with coordinates specified relative\nto the top-left of the page. The numbers represent the x, y values of the\npolygon vertices, clockwise from the left (-180 degrees inclusive) relative\nto the element orientation.", + "items": { + "type": "number", + "format": "float" + } + }, + "span": { + "$ref": "#/definitions/DocumentSpan", + "description": "Location of the selection mark in the reading order concatenated content." + }, + "confidence": { + "type": "number", + "format": "float", + "description": "Confidence of correctly extracting the selection mark.", + "minimum": 0, + "maximum": 1 + } + }, + "required": [ + "state", + "span", + "confidence" + ] + }, + "DocumentSelectionMarkState": { + "type": "string", + "description": "State of the selection mark.", + "enum": [ + "selected", + "unselected" + ], + "x-ms-enum": { + "name": "DocumentSelectionMarkState", + "modelAsString": true, + "values": [ + { + "name": "selected", + "value": "selected", + "description": "The selection mark is selected, often indicated by a check ✓ or cross X inside\nthe selection mark." + }, + { + "name": "unselected", + "value": "unselected", + "description": "The selection mark is not selected." + } + ] + } + }, + "DocumentSignatureType": { + "type": "string", + "description": "Presence of signature.", + "enum": [ + "signed", + "unsigned" + ], + "x-ms-enum": { + "name": "DocumentSignatureType", + "modelAsString": true, + "values": [ + { + "name": "signed", + "value": "signed", + "description": "A signature is detected." + }, + { + "name": "unsigned", + "value": "unsigned", + "description": "No signatures are detected." + } + ] + } + }, + "DocumentSpan": { + "type": "object", + "description": "Contiguous region of the concatenated content property, specified as an offset\nand length.", + "properties": { + "offset": { + "type": "integer", + "format": "int32", + "description": "Zero-based index of the content represented by the span.", + "minimum": 0 + }, + "length": { + "type": "integer", + "format": "int32", + "description": "Number of characters in the content represented by the span.", + "minimum": 0 + } + }, + "required": [ + "offset", + "length" + ] + }, + "DocumentStyle": { + "type": "object", + "description": "An object representing observed text styles.", + "properties": { + "isHandwritten": { + "type": "boolean", + "description": "Is content handwritten?" + }, + "similarFontFamily": { + "type": "string", + "description": "Visually most similar font from among the set of supported font families, with\nfallback fonts following CSS convention (ex. 'Arial, sans-serif')." + }, + "fontStyle": { + "$ref": "#/definitions/FontStyle", + "description": "Font style." + }, + "fontWeight": { + "$ref": "#/definitions/FontWeight", + "description": "Font weight." + }, + "color": { + "type": "string", + "description": "Foreground color in #rrggbb hexadecimal format.", + "pattern": "^#[0-9a-f]{6}$" + }, + "backgroundColor": { + "type": "string", + "description": "Background color in #rrggbb hexadecimal format..", + "pattern": "^#[0-9a-f]{6}$" + }, + "spans": { + "type": "array", + "description": "Location of the text elements in the concatenated content the style applies to.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + }, + "confidence": { + "type": "number", + "format": "float", + "description": "Confidence of correctly identifying the style.", + "minimum": 0, + "maximum": 1 + } + }, + "required": [ + "spans", + "confidence" + ] + }, + "DocumentTable": { + "type": "object", + "description": "A table object consisting table cells arranged in a rectangular layout.", + "properties": { + "rowCount": { + "type": "integer", + "format": "int32", + "description": "Number of rows in the table.", + "minimum": 1 + }, + "columnCount": { + "type": "integer", + "format": "int32", + "description": "Number of columns in the table.", + "minimum": 1 + }, + "cells": { + "type": "array", + "description": "Cells contained within the table.", + "items": { + "$ref": "#/definitions/DocumentTableCell" + }, + "x-ms-identifiers": [] + }, + "boundingRegions": { + "type": "array", + "description": "Bounding regions covering the table.", + "items": { + "$ref": "#/definitions/BoundingRegion" + }, + "x-ms-identifiers": [] + }, + "spans": { + "type": "array", + "description": "Location of the table in the reading order concatenated content.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + }, + "caption": { + "$ref": "#/definitions/DocumentCaption", + "description": "Caption associated with the table." + }, + "footnotes": { + "type": "array", + "description": "List of footnotes associated with the table.", + "items": { + "$ref": "#/definitions/DocumentFootnote" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "rowCount", + "columnCount", + "cells", + "spans" + ] + }, + "DocumentTableCell": { + "type": "object", + "description": "An object representing the location and content of a table cell.", + "properties": { + "kind": { + "type": "string", + "description": "Table cell kind.", + "default": "content", + "enum": [ + "content", + "rowHeader", + "columnHeader", + "stubHead", + "description" + ], + "x-ms-enum": { + "name": "DocumentTableCellKind", + "modelAsString": true, + "values": [ + { + "name": "content", + "value": "content", + "description": "Contains the main content/data." + }, + { + "name": "rowHeader", + "value": "rowHeader", + "description": "Describes the content of the row." + }, + { + "name": "columnHeader", + "value": "columnHeader", + "description": "Describes the content of the column." + }, + { + "name": "stubHead", + "value": "stubHead", + "description": "Describes the row headers, usually located at the top left corner of a table." + }, + { + "name": "description", + "value": "description", + "description": "Describes the content in (parts of) the table." + } + ] + } + }, + "rowIndex": { + "type": "integer", + "format": "int32", + "description": "Row index of the cell." + }, + "columnIndex": { + "type": "integer", + "format": "int32", + "description": "Column index of the cell." + }, + "rowSpan": { + "type": "integer", + "format": "int32", + "description": "Number of rows spanned by this cell.", + "default": 1, + "minimum": 1 + }, + "columnSpan": { + "type": "integer", + "format": "int32", + "description": "Number of columns spanned by this cell.", + "default": 1, + "minimum": 1 + }, + "content": { + "type": "string", + "description": "Concatenated content of the table cell in reading order." + }, + "boundingRegions": { + "type": "array", + "description": "Bounding regions covering the table cell.", + "items": { + "$ref": "#/definitions/BoundingRegion" + }, + "x-ms-identifiers": [] + }, + "spans": { + "type": "array", + "description": "Location of the table cell in the reading order concatenated content.", + "items": { + "$ref": "#/definitions/DocumentSpan" + }, + "x-ms-identifiers": [] + }, + "elements": { + "type": "array", + "description": "Child elements of the table cell.", + "items": { + "$ref": "#/definitions/DocumentElement" + } + } + }, + "required": [ + "rowIndex", + "columnIndex", + "content", + "spans" + ] + }, + "DocumentTypeDetails": { + "type": "object", + "description": "Document type info.", + "properties": { + "description": { + "type": "string", + "description": "Document model description.", + "maxLength": 4096 + }, + "buildMode": { + "$ref": "#/definitions/DocumentBuildMode", + "description": "Custom document model build mode." + }, + "fieldSchema": { + "type": "object", + "description": "Description of the document semantic schema using a JSON Schema style syntax.", + "additionalProperties": { + "$ref": "#/definitions/DocumentFieldSchema" + } + }, + "fieldConfidence": { + "type": "object", + "description": "Estimated confidence for each field.", + "additionalProperties": { + "format": "float", + "type": "number" + } + } + }, + "required": [ + "fieldSchema" + ] + }, + "DocumentWord": { + "type": "object", + "description": "A word object consisting of a contiguous sequence of characters. For non-space\ndelimited languages, such as Chinese, Japanese, and Korean, each character is\nrepresented as its own word.", + "properties": { + "content": { + "type": "string", + "description": "Text content of the word." + }, + "polygon": { + "type": "array", + "description": "Bounding polygon of the word, with coordinates specified relative to the\ntop-left of the page. The numbers represent the x, y values of the polygon\nvertices, clockwise from the left (-180 degrees inclusive) relative to the\nelement orientation.", + "items": { + "type": "number", + "format": "float" + } + }, + "span": { + "$ref": "#/definitions/DocumentSpan", + "description": "Location of the word in the reading order concatenated content." + }, + "confidence": { + "type": "number", + "format": "float", + "description": "Confidence of correctly extracting the word.", + "minimum": 0, + "maximum": 1 + } + }, + "required": [ + "content", + "span", + "confidence" + ] + }, + "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/Error" + }, + "x-ms-identifiers": [] + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "An object containing more specific information than the current object about the error." + } + }, + "required": [ + "code", + "message" + ] + }, + "ErrorResponse": { + "type": "object", + "description": "Error response object.", + "properties": { + "error": { + "$ref": "#/definitions/Error", + "description": "Error info." + } + }, + "required": [ + "error" + ] + }, + "FontStyle": { + "type": "string", + "description": "Font style.", + "enum": [ + "normal", + "italic" + ], + "x-ms-enum": { + "name": "FontStyle", + "modelAsString": true, + "values": [ + { + "name": "normal", + "value": "normal", + "description": "Characters are represented normally." + }, + { + "name": "italic", + "value": "italic", + "description": "Characters are visually slanted to the right." + } + ] + } + }, + "FontWeight": { + "type": "string", + "description": "Font weight.", + "enum": [ + "normal", + "bold" + ], + "x-ms-enum": { + "name": "FontWeight", + "modelAsString": true, + "values": [ + { + "name": "normal", + "value": "normal", + "description": "Characters are represented normally." + }, + { + "name": "bold", + "value": "bold", + "description": "Characters are represented with thicker strokes." + } + ] + } + }, + "InnerError": { + "type": "object", + "description": "An object containing more specific information about the error.", + "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." + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "Inner error." + } + } + }, + "LengthUnit": { + "type": "string", + "description": "The unit used by the width, height, and polygon properties. For images, the unit is \"pixel\". For PDF, the unit is \"inch\".", + "enum": [ + "pixel", + "inch" + ], + "x-ms-enum": { + "name": "LengthUnit", + "modelAsString": true, + "values": [ + { + "name": "pixel", + "value": "pixel", + "description": "Length unit for image files." + }, + { + "name": "inch", + "value": "inch", + "description": "Length unit for PDF files." + } + ] + } + }, + "OperationDetails": { + "type": "object", + "description": "Operation info.", + "properties": { + "operationId": { + "type": "string", + "description": "Operation ID", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "status": { + "$ref": "#/definitions/OperationStatus", + "description": "Operation status. notStarted, running, completed, or failed" + }, + "percentCompleted": { + "type": "integer", + "format": "int32", + "description": "Operation progress (0-100).", + "minimum": 0, + "maximum": 100 + }, + "createdDateTime": { + "type": "string", + "format": "date-time", + "description": "Date and time (UTC) when the operation was created." + }, + "lastUpdatedDateTime": { + "type": "string", + "format": "date-time", + "description": "Date and time (UTC) when the status was last updated." + }, + "kind": { + "$ref": "#/definitions/OperationKind", + "description": "Type of operation." + }, + "resourceLocation": { + "type": "string", + "format": "uri", + "description": "URL of the resource targeted by this operation." + }, + "apiVersion": { + "type": "string", + "description": "API version used to create this operation." + }, + "tags": { + "type": "object", + "description": "List of key-value tag attributes associated with the document model.", + "additionalProperties": { + "type": "string" + } + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Encountered error." + } + }, + "discriminator": "kind", + "required": [ + "operationId", + "status", + "createdDateTime", + "lastUpdatedDateTime", + "kind", + "resourceLocation" + ] + }, + "OperationKind": { + "type": "string", + "description": "Type of operation.", + "enum": [ + "documentModelBuild", + "documentModelCompose", + "documentModelCopyTo", + "documentClassifierBuild" + ], + "x-ms-enum": { + "name": "OperationKind", + "modelAsString": true, + "values": [ + { + "name": "documentModelBuild", + "value": "documentModelBuild", + "description": "Build a new custom document model." + }, + { + "name": "documentModelCompose", + "value": "documentModelCompose", + "description": "Compose a new custom document model from existing models." + }, + { + "name": "documentModelCopyTo", + "value": "documentModelCopyTo", + "description": "Copy an existing document model to potentially a different resource, region, or\nsubscription." + }, + { + "name": "documentClassifierBuild", + "value": "documentClassifierBuild", + "description": "Build a new custom classifier model." + } + ] + } + }, + "OperationStatus": { + "type": "string", + "description": "Operation status.", + "enum": [ + "notStarted", + "running", + "failed", + "succeeded", + "completed", + "canceled" + ], + "x-ms-enum": { + "name": "OperationStatus", + "modelAsString": true, + "values": [ + { + "name": "notStarted", + "value": "notStarted", + "description": "The operation has not started yet." + }, + { + "name": "running", + "value": "running", + "description": "The operation is in progress." + }, + { + "name": "failed", + "value": "failed", + "description": "The operation has failed." + }, + { + "name": "succeeded", + "value": "succeeded", + "description": "The operation has succeeded." + }, + { + "name": "completed", + "value": "completed", + "description": "The operation has completed." + }, + { + "name": "canceled", + "value": "canceled", + "description": "The operation has been canceled." + } + ] + } + }, + "PagedDocumentClassifierDetails": { + "type": "object", + "description": "Paged collection of DocumentClassifierDetails items", + "properties": { + "value": { + "type": "array", + "description": "The DocumentClassifierDetails items on this page", + "items": { + "$ref": "#/definitions/DocumentClassifierDetails" + }, + "x-ms-identifiers": [] + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "PagedDocumentModelDetails": { + "type": "object", + "description": "Paged collection of DocumentModelDetails items", + "properties": { + "value": { + "type": "array", + "description": "The DocumentModelDetails items on this page", + "items": { + "$ref": "#/definitions/DocumentModelDetails" + }, + "x-ms-identifiers": [] + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "PagedOperationDetails": { + "type": "object", + "description": "Paged collection of OperationDetails items", + "properties": { + "value": { + "type": "array", + "description": "The OperationDetails items on this page", + "items": { + "$ref": "#/definitions/OperationDetails" + }, + "x-ms-identifiers": [] + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "ParagraphRole": { + "type": "string", + "description": "Semantic role of the paragraph.", + "enum": [ + "pageHeader", + "pageFooter", + "pageNumber", + "title", + "sectionHeading", + "footnote", + "formulaBlock" + ], + "x-ms-enum": { + "name": "ParagraphRole", + "modelAsString": true, + "values": [ + { + "name": "pageHeader", + "value": "pageHeader", + "description": "Text near the top edge of the page." + }, + { + "name": "pageFooter", + "value": "pageFooter", + "description": "Text near the bottom edge of the page." + }, + { + "name": "pageNumber", + "value": "pageNumber", + "description": "Page number." + }, + { + "name": "title", + "value": "title", + "description": "Top-level title describing the entire document." + }, + { + "name": "sectionHeading", + "value": "sectionHeading", + "description": "Sub heading describing a section of the document." + }, + { + "name": "footnote", + "value": "footnote", + "description": "A note usually placed after the main content on a page." + }, + { + "name": "formulaBlock", + "value": "formulaBlock", + "description": "A block of formulas, often with shared alignment." + } + ] + } + }, + "QuotaDetails": { + "type": "object", + "description": "Quota used, limit, and next reset date/time.", + "properties": { + "used": { + "type": "integer", + "format": "int32", + "description": "Amount of the resource quota used." + }, + "quota": { + "type": "integer", + "format": "int32", + "description": "Resource quota limit." + }, + "quotaResetDateTime": { + "type": "string", + "format": "date-time", + "description": "Date/time when the resource quota usage will be reset." + } + }, + "required": [ + "used", + "quota", + "quotaResetDateTime" + ] + }, + "ResourceDetails": { + "type": "object", + "description": "General information regarding the current resource.", + "properties": { + "customDocumentModels": { + "$ref": "#/definitions/CustomDocumentModelsDetails", + "description": "Details regarding custom document models." + }, + "customNeuralDocumentModelBuilds": { + "$ref": "#/definitions/QuotaDetails", + "description": "Quota used, limit, and next reset date/time." + } + }, + "required": [ + "customDocumentModels", + "customNeuralDocumentModelBuilds" + ] + }, + "StringIndexType": { + "type": "string", + "description": "Method used to compute string offset and length.", + "enum": [ + "textElements", + "unicodeCodePoint", + "utf16CodeUnit" + ], + "x-ms-enum": { + "name": "StringIndexType", + "modelAsString": true, + "values": [ + { + "name": "textElements", + "value": "textElements", + "description": "User-perceived display character, or grapheme cluster, as defined by Unicode\n8.0.0." + }, + { + "name": "unicodeCodePoint", + "value": "unicodeCodePoint", + "description": "Character unit represented by a single unicode code point. Used by Python 3." + }, + { + "name": "utf16CodeUnit", + "value": "utf16CodeUnit", + "description": "Character unit represented by a 16-bit Unicode code unit. Used by JavaScript,\nJava, and .NET." + } + ] + } + }, + "Warning": { + "type": "object", + "description": "The error object.", + "properties": { + "code": { + "type": "string", + "description": "One of a server-defined set of warning codes." + }, + "message": { + "type": "string", + "description": "A human-readable representation of the warning." + }, + "target": { + "type": "string", + "description": "The target of the error." + } + }, + "required": [ + "code", + "message" + ] + } + }, + "parameters": { + "AnalyzeFromStreamRequestParams.input": { + "name": "input", + "in": "body", + "description": "Input content.", + "required": true, + "schema": { + "type": "string", + "format": "binary" + }, + "x-ms-parameter-location": "method" + }, + "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" + }, + "DocumentClassifierAnalyzeRequestParams.classifierId": { + "name": "classifierId", + "in": "path", + "description": "Unique document classifier name.", + "required": true, + "type": "string", + "maxLength": 64, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$", + "x-ms-parameter-location": "method" + }, + "DocumentClassifierAnalyzeRequestParams.split": { + "name": "split", + "in": "query", + "description": "Document splitting mode.", + "required": false, + "type": "string", + "default": "none", + "enum": [ + "auto", + "none", + "perPage" + ], + "x-ms-enum": { + "name": "SplitMode", + "modelAsString": true, + "values": [ + { + "name": "auto", + "value": "auto", + "description": "Automatically split file into documents." + }, + { + "name": "none", + "value": "none", + "description": "Treat the entire file as a single document." + }, + { + "name": "perPage", + "value": "perPage", + "description": "Treat each page in the file as a separate document." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "DocumentClassifierAnalyzeRequestParams.stringIndexType": { + "name": "stringIndexType", + "in": "query", + "description": "Method used to compute string offset and length.", + "required": false, + "type": "string", + "default": "textElements", + "enum": [ + "textElements", + "unicodeCodePoint", + "utf16CodeUnit" + ], + "x-ms-enum": { + "name": "StringIndexType", + "modelAsString": true, + "values": [ + { + "name": "textElements", + "value": "textElements", + "description": "User-perceived display character, or grapheme cluster, as defined by Unicode\n8.0.0." + }, + { + "name": "unicodeCodePoint", + "value": "unicodeCodePoint", + "description": "Character unit represented by a single unicode code point. Used by Python 3." + }, + { + "name": "utf16CodeUnit", + "value": "utf16CodeUnit", + "description": "Character unit represented by a 16-bit Unicode code unit. Used by JavaScript,\nJava, and .NET." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "DocumentModelAnalyzeRequestParams.features": { + "name": "features", + "in": "query", + "description": "List of optional analysis features.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "ocrHighResolution", + "languages", + "barcodes", + "formulas", + "keyValuePairs", + "styleFont", + "queryFields" + ], + "x-ms-enum": { + "name": "DocumentAnalysisFeature", + "modelAsString": true, + "values": [ + { + "name": "ocrHighResolution", + "value": "ocrHighResolution", + "description": "Perform OCR at a higher resolution to handle documents with fine print." + }, + { + "name": "languages", + "value": "languages", + "description": "Enable the detection of the text content language." + }, + { + "name": "barcodes", + "value": "barcodes", + "description": "Enable the detection of barcodes in the document." + }, + { + "name": "formulas", + "value": "formulas", + "description": "Enable the detection of mathematical expressions in the document." + }, + { + "name": "keyValuePairs", + "value": "keyValuePairs", + "description": "Enable the detection of general key value pairs (form fields) in the document." + }, + { + "name": "styleFont", + "value": "styleFont", + "description": "Enable the recognition of various font styles." + }, + { + "name": "queryFields", + "value": "queryFields", + "description": "Enable the extraction of additional fields via the queryFields query parameter." + } + ] + } + }, + "collectionFormat": "csv", + "x-ms-parameter-location": "method" + }, + "DocumentModelAnalyzeRequestParams.locale": { + "name": "locale", + "in": "query", + "description": "Locale hint for text recognition and document analysis. Value may contain only\nthe language code (ex. \"en\", \"fr\") or BCP 47 language tag (ex. \"en-US\").", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DocumentModelAnalyzeRequestParams.modelId": { + "name": "modelId", + "in": "path", + "description": "Unique document model name.", + "required": true, + "type": "string", + "maxLength": 64, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._~-]{1,63}$", + "x-ms-parameter-location": "method" + }, + "DocumentModelAnalyzeRequestParams.outputContentFormat": { + "name": "outputContentFormat", + "in": "query", + "description": "Format of the analyze result top-level content.", + "required": false, + "type": "string", + "default": "text", + "enum": [ + "text", + "markdown" + ], + "x-ms-enum": { + "name": "ContentFormat", + "modelAsString": true, + "values": [ + { + "name": "text", + "value": "text", + "description": "Plain text representation of the document content without any formatting." + }, + { + "name": "markdown", + "value": "markdown", + "description": "Markdown representation of the document content with section headings, tables,\netc." + } + ] + }, + "x-ms-parameter-location": "method" + }, + "DocumentModelAnalyzeRequestParams.pages": { + "name": "pages", + "in": "query", + "description": "List of 1-based page numbers to analyze. Ex. \"1-3,5,7-9\"", + "required": false, + "type": "string", + "pattern": "^(\\d+(-\\d+)?)(,\\s*(\\d+(-\\d+)?))*$", + "x-ms-parameter-location": "method" + }, + "DocumentModelAnalyzeRequestParams.queryFields": { + "name": "queryFields", + "in": "query", + "description": "List of additional fields to extract. Ex. \"NumberOfGuests,StoreNumber\"", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "x-ms-parameter-location": "method" + }, + "DocumentModelAnalyzeRequestParams.stringIndexType": { + "name": "stringIndexType", + "in": "query", + "description": "Method used to compute string offset and length.", + "required": false, + "type": "string", + "default": "textElements", + "enum": [ + "textElements", + "unicodeCodePoint", + "utf16CodeUnit" + ], + "x-ms-enum": { + "name": "StringIndexType", + "modelAsString": true, + "values": [ + { + "name": "textElements", + "value": "textElements", + "description": "User-perceived display character, or grapheme cluster, as defined by Unicode\n8.0.0." + }, + { + "name": "unicodeCodePoint", + "value": "unicodeCodePoint", + "description": "Character unit represented by a single unicode code point. Used by Python 3." + }, + { + "name": "utf16CodeUnit", + "value": "utf16CodeUnit", + "description": "Character unit represented by a 16-bit Unicode code unit. Used by JavaScript,\nJava, and .NET." + } + ] + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/AnalyzeDocument_Base64.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/AnalyzeDocument_Base64.json new file mode 100644 index 0000000000000..c60d635fb722b --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/AnalyzeDocument_Base64.json @@ -0,0 +1,22 @@ +{ + "operationId": "DocumentModels_AnalyzeDocument", + "title": "Analyze Document from Base64", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "prebuilt-layout", + "pages": "1-2,4", + "locale": "en-US", + "stringIndexType": "textElements", + "analyzeRequest": { + "base64Source": "e2Jhc2U2NEVuY29kZWRQZGZ9" + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/prebuilt-layout/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/AnalyzeDocument_Stream.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/AnalyzeDocument_Stream.json new file mode 100644 index 0000000000000..f78b6ca576b04 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/AnalyzeDocument_Stream.json @@ -0,0 +1,20 @@ +{ + "operationId": "DocumentModels_AnalyzeDocumentFromStream", + "title": "Analyze Document from Url", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "customModel", + "pages": "1-2,4", + "locale": "en-US", + "stringIndexType": "textElements", + "input": "{binaryFile}" + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/customModel/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/AnalyzeDocument_Url.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/AnalyzeDocument_Url.json new file mode 100644 index 0000000000000..3ef083f0012aa --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/AnalyzeDocument_Url.json @@ -0,0 +1,22 @@ +{ + "operationId": "DocumentModels_AnalyzeDocument", + "title": "Analyze Document from Url", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "customModel", + "pages": "1-2,4", + "locale": "en-US", + "stringIndexType": "textElements", + "analyzeRequest": { + "urlSource": "http://host.com/doc.pdf" + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/customModel/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/AuthorizeCopyDocumentModel.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/AuthorizeCopyDocumentModel.json new file mode 100644 index 0000000000000..b887dcc9fa194 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/AuthorizeCopyDocumentModel.json @@ -0,0 +1,24 @@ +{ + "operationId": "DocumentModels_AuthorizeModelCopy", + "title": "Authorize Copy of Document Model", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "authorizeCopyRequest": { + "modelId": "targetModel", + "description": "Target model description" + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/targetSub/resourceGroups/targetRG/providers/Microsoft.CognitiveServices/accounts/targetService", + "targetResourceRegion": "targetResourceRegion", + "targetModelId": "targetModel", + "targetModelLocation": "https://targetEndpoint.cognitiveservices.azure.com/documentintelligence/documentModels/targetModel", + "accessToken": "accessToken", + "expirationDateTime": "2021-09-23T09:12:54.552Z" + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/BuildDocumentClassifier.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/BuildDocumentClassifier.json new file mode 100644 index 0000000000000..d61902675c6a5 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/BuildDocumentClassifier.json @@ -0,0 +1,33 @@ +{ + "operationId": "DocumentClassifiers_BuildClassifier", + "title": "Build Document Classifier", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "buildRequest": { + "classifierId": "myClassifier", + "description": "Classifier description", + "docTypes": { + "formA": { + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken", + "prefix": "formADocs/" + } + }, + "formB": { + "azureBlobFileListSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken", + "fileList": "formB.jsonl" + } + } + } + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/BuildDocumentModel.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/BuildDocumentModel.json new file mode 100644 index 0000000000000..c3e813bb17cce --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/BuildDocumentModel.json @@ -0,0 +1,27 @@ +{ + "operationId": "DocumentModels_BuildModel", + "title": "Build Document Model", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "buildRequest": { + "modelId": "myCustomModel", + "description": "Custom model description", + "buildMode": "template", + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer?mySasToken", + "prefix": "trainingDocs/" + }, + "tags": { + "createdBy": "myUserId" + } + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/ClassifyDocument_Stream.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/ClassifyDocument_Stream.json new file mode 100644 index 0000000000000..12c565bc6adfc --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/ClassifyDocument_Stream.json @@ -0,0 +1,18 @@ +{ + "operationId": "DocumentClassifiers_ClassifyDocumentFromStream", + "title": "Classify Document from Url", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "classifierId": "classifierId", + "stringIndexType": "textElements", + "input": "{binaryFile}" + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentClassifiers/customClassifier/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/ClassifyDocument_Url.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/ClassifyDocument_Url.json new file mode 100644 index 0000000000000..bdc7b60b62eff --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/ClassifyDocument_Url.json @@ -0,0 +1,20 @@ +{ + "operationId": "DocumentClassifiers_ClassifyDocument", + "title": "Classify Document from Url", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "classifierId": "classifierId", + "stringIndexType": "textElements", + "classifyRequest": { + "urlSource": "http://host.com/doc.pdf" + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentClassifiers/customClassifier/analyzeResults/3b31320d-8bab-4f88-b19c-2322a7f11034?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/ComposeDocumentModel.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/ComposeDocumentModel.json new file mode 100644 index 0000000000000..fd8b6d4c17ed1 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/ComposeDocumentModel.json @@ -0,0 +1,27 @@ +{ + "operationId": "DocumentModels_ComposeModel", + "title": "Compose Document Model", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "composeRequest": { + "modelId": "composedModel", + "description": "Composed model description", + "componentModels": [ + { + "modelId": "model1" + }, + { + "modelId": "model2" + } + ] + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/CopyDocumentModelTo.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/CopyDocumentModelTo.json new file mode 100644 index 0000000000000..a3f5269b14b42 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/CopyDocumentModelTo.json @@ -0,0 +1,24 @@ +{ + "operationId": "DocumentModels_CopyModelTo", + "title": "Copy Document Model To", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "sourceModel", + "copyToRequest": { + "targetResourceId": "/subscriptions/targetSub/resourceGroups/targetRG/providers/Microsoft.CognitiveServices/accounts/targetService", + "targetResourceRegion": "targetResourceRegion", + "targetModelId": "targetModel", + "targetModelLocation": "https://targetEndpoint.cognitiveservices.azure.com/documentintelligence/documentModels/targetModel", + "accessToken": "accessToken", + "expirationDateTime": "2021-09-23T09:12:54.552Z" + } + }, + "responses": { + "202": { + "headers": { + "Operation-Location": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/operations/b704bb00-d130-4f3f-a1d8-ca96de3eabb4?api-version=2024-02-29-preview" + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/DeleteDocumentClassifier.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/DeleteDocumentClassifier.json new file mode 100644 index 0000000000000..5e6f6390d2344 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/DeleteDocumentClassifier.json @@ -0,0 +1,12 @@ +{ + "operationId": "DocumentClassifiers_DeleteClassifier", + "title": "Delete Document Classifier", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "classifierId": "myClassifier" + }, + "responses": { + "204": {} + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/DeleteDocumentModel.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/DeleteDocumentModel.json new file mode 100644 index 0000000000000..b49970cb62c26 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/DeleteDocumentModel.json @@ -0,0 +1,12 @@ +{ + "operationId": "DocumentModels_DeleteModel", + "title": "Delete Document Model", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "myCustomModel" + }, + "responses": { + "204": {} + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetAnalyzeDocumentResult.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetAnalyzeDocumentResult.json new file mode 100644 index 0000000000000..08d8e4910f426 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetAnalyzeDocumentResult.json @@ -0,0 +1,7222 @@ +{ + "operationId": "DocumentModels_GetAnalyzeResult", + "title": "Get Analyze Document Result", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "prebuilt-invoice", + "resultId": "3b31320d-8bab-4f88-b19c-2322a7f11034" + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "createdDateTime": "2021-09-24T13:00:46Z", + "lastUpdatedDateTime": "2021-09-24T13:00:49Z", + "analyzeResult": { + "apiVersion": "2024-02-29-preview", + "modelId": "prebuilt-invoice", + "stringIndexType": "textElements", + "contentFormat": "text", + "content": "CONTOSO LTD.\nINVOICE\nContoso Headquarters\nINVOICE: INV-100\n123 456th St\nINVOICE DATE: 11/15/2019\nNew York, NY, 10001\nDUE DATE: 12/15/2019\nCUSTOMER NAME: MICROSOFT CORPORATION\nSERVICE PERIOD: 10/14/2019 – 11/14/2019\nCUSTOMER ID: CID-12345\nMicrosoft Corp\n123 Other St,\nRedmond WA, 98052\nBILL TO:\nSHIP TO:\nSERVICE ADDRESS:\nMicrosoft Finance\nMicrosoft Delivery\nMicrosoft Services\n123 Bill St,\n123 Ship St,\n123 Service St,\nRedmond WA, 98052\nRedmond WA, 98052\nRedmond WA, 98052\nSALESPERSON\nP.O. NUMBER\nREQUISITIONER\nSHIPPED VIA\nF.O.B. POINT\nTERMS\nPO-3333\nDATE\nITEM CODE\nDESCRIPTION\nQTY\nUM\nPRICE\nTAX\nAMOUNT\n3/4/2021\nA123\nConsulting Services\n2\nhours\n$30.00\n10%\n$60.00\n3/5/2021\nB456\nDocument Fee\n3\n$10.00\n5%\n$30.00\n3/6/2021\nC789\nPrinting Fee\n10\npages\n$1.00\n20%\n$10.00\nSUBTOTAL\n$100.00\nSALES TAX\n$10.00\nTOTAL\n$110.00\nPREVIOUS UNPAID BALANCE\n$500.00\nAMOUNT DUE\n$610.00\nTHANK YOU FOR YOUR BUSINESS!\nREMIT TO:\nContoso Billing\n123 Remit St\nNew York, NY, 10001\n:unselected:", + "pages": [ + { + "pageNumber": 1, + "angle": 0, + "width": 8.5, + "height": 11, + "unit": "inch", + "words": [ + { + "content": "CONTOSO", + "polygon": [ + 0.5911, + 0.6857, + 1.7451, + 0.6857, + 1.7451, + 0.8664, + 0.5911, + 0.8664 + ], + "confidence": 1, + "span": { + "offset": 0, + "length": 7 + } + }, + { + "content": "LTD.", + "polygon": [ + 1.8441, + 0.6879, + 2.3181, + 0.6879, + 2.3181, + 0.865, + 1.8441, + 0.865 + ], + "confidence": 1, + "span": { + "offset": 8, + "length": 4 + } + }, + { + "content": "INVOICE", + "polygon": [ + 7.0751, + 0.589, + 7.9886, + 0.589, + 7.9886, + 0.7697, + 7.0751, + 0.7697 + ], + "confidence": 1, + "span": { + "offset": 13, + "length": 7 + } + }, + { + "content": "Contoso", + "polygon": [ + 0.5882, + 1.4303, + 1.1337, + 1.4303, + 1.1337, + 1.5383, + 0.5882, + 1.5383 + ], + "confidence": 1, + "span": { + "offset": 21, + "length": 7 + } + }, + { + "content": "Headquarters", + "polygon": [ + 1.1905, + 1.4239, + 2.0978, + 1.4239, + 2.0978, + 1.5664, + 1.1905, + 1.5664 + ], + "confidence": 1, + "span": { + "offset": 29, + "length": 12 + } + }, + { + "content": "INVOICE:", + "polygon": [ + 6.8599, + 1.4217, + 7.4328, + 1.4217, + 7.4328, + 1.5218, + 6.8599, + 1.5218 + ], + "confidence": 1, + "span": { + "offset": 42, + "length": 8 + } + }, + { + "content": "INV-100", + "polygon": [ + 7.4959, + 1.422, + 7.9988, + 1.422, + 7.9988, + 1.5215, + 7.4959, + 1.5215 + ], + "confidence": 1, + "span": { + "offset": 51, + "length": 7 + } + }, + { + "content": "123", + "polygon": [ + 0.5945, + 1.6339, + 0.8213, + 1.6339, + 0.8213, + 1.742, + 0.5945, + 1.742 + ], + "confidence": 1, + "span": { + "offset": 59, + "length": 3 + } + }, + { + "content": "456th", + "polygon": [ + 0.874, + 1.6092, + 1.2102, + 1.6092, + 1.2102, + 1.742, + 0.874, + 1.742 + ], + "confidence": 1, + "span": { + "offset": 63, + "length": 5 + } + }, + { + "content": "St", + "polygon": [ + 1.2598, + 1.6339, + 1.3812, + 1.6339, + 1.3812, + 1.742, + 1.2598, + 1.742 + ], + "confidence": 1, + "span": { + "offset": 69, + "length": 2 + } + }, + { + "content": "INVOICE", + "polygon": [ + 6.2263, + 1.6254, + 6.7562, + 1.6254, + 6.7562, + 1.7256, + 6.2263, + 1.7256 + ], + "confidence": 1, + "span": { + "offset": 72, + "length": 7 + } + }, + { + "content": "DATE:", + "polygon": [ + 6.8132, + 1.6267, + 7.1891, + 1.6267, + 7.1891, + 1.7248, + 6.8132, + 1.7248 + ], + "confidence": 1, + "span": { + "offset": 80, + "length": 5 + } + }, + { + "content": "11/15/2019", + "polygon": [ + 7.2528, + 1.6139, + 7.993, + 1.6139, + 7.993, + 1.7449, + 7.2528, + 1.7449 + ], + "confidence": 1, + "span": { + "offset": 86, + "length": 10 + } + }, + { + "content": "New", + "polygon": [ + 0.5943, + 1.8385, + 0.8848, + 1.8385, + 0.8848, + 1.9454, + 0.5943, + 1.9454 + ], + "confidence": 1, + "span": { + "offset": 97, + "length": 3 + } + }, + { + "content": "York,", + "polygon": [ + 0.9293, + 1.8307, + 1.2568, + 1.8307, + 1.2568, + 1.9675, + 0.9293, + 1.9675 + ], + "confidence": 1, + "span": { + "offset": 101, + "length": 5 + } + }, + { + "content": "NY,", + "polygon": [ + 1.3205, + 1.8382, + 1.5242, + 1.8382, + 1.5242, + 1.9675, + 1.3205, + 1.9675 + ], + "confidence": 1, + "span": { + "offset": 107, + "length": 3 + } + }, + { + "content": "10001", + "polygon": [ + 1.5915, + 1.8372, + 1.9894, + 1.8372, + 1.9894, + 1.9454, + 1.5915, + 1.9454 + ], + "confidence": 1, + "span": { + "offset": 111, + "length": 5 + } + }, + { + "content": "DUE", + "polygon": [ + 6.4966, + 1.8333, + 6.7569, + 1.8333, + 6.7569, + 1.9322, + 6.4966, + 1.9322 + ], + "confidence": 1, + "span": { + "offset": 117, + "length": 3 + } + }, + { + "content": "DATE:", + "polygon": [ + 6.8126, + 1.8333, + 7.1846, + 1.8333, + 7.1846, + 1.9315, + 6.8126, + 1.9315 + ], + "confidence": 1, + "span": { + "offset": 121, + "length": 5 + } + }, + { + "content": "12/15/2019", + "polygon": [ + 7.2494, + 1.8206, + 7.993, + 1.8206, + 7.993, + 1.9515, + 7.2494, + 1.9515 + ], + "confidence": 1, + "span": { + "offset": 127, + "length": 10 + } + }, + { + "content": "CUSTOMER", + "polygon": [ + 4.9513, + 2.0388, + 5.6868, + 2.0388, + 5.6868, + 2.1389, + 4.9513, + 2.1389 + ], + "confidence": 1, + "span": { + "offset": 138, + "length": 8 + } + }, + { + "content": "NAME:", + "polygon": [ + 5.7412, + 2.04, + 6.1764, + 2.04, + 6.1764, + 2.1381, + 5.7412, + 2.1381 + ], + "confidence": 1, + "span": { + "offset": 147, + "length": 5 + } + }, + { + "content": "MICROSOFT", + "polygon": [ + 6.2419, + 2.0391, + 6.9981, + 2.0391, + 6.9981, + 2.1386, + 6.2419, + 2.1386 + ], + "confidence": 1, + "span": { + "offset": 153, + "length": 9 + } + }, + { + "content": "CORPORATION", + "polygon": [ + 7.0448, + 2.0391, + 7.9825, + 2.0391, + 7.9825, + 2.1386, + 7.0448, + 2.1386 + ], + "confidence": 1, + "span": { + "offset": 163, + "length": 11 + } + }, + { + "content": "SERVICE", + "polygon": [ + 5.1667, + 2.2421, + 5.6923, + 2.2421, + 5.6923, + 2.3422, + 5.1667, + 2.3422 + ], + "confidence": 1, + "span": { + "offset": 175, + "length": 7 + } + }, + { + "content": "PERIOD:", + "polygon": [ + 5.748, + 2.2421, + 6.2721, + 2.2421, + 6.2721, + 2.3422, + 5.748, + 2.3422 + ], + "confidence": 1, + "span": { + "offset": 183, + "length": 7 + } + }, + { + "content": "10/14/2019", + "polygon": [ + 6.3357, + 2.2306, + 7.0749, + 2.2306, + 7.0749, + 2.3615, + 6.3357, + 2.3615 + ], + "confidence": 1, + "span": { + "offset": 191, + "length": 10 + } + }, + { + "content": "–", + "polygon": [ + 7.122, + 2.2922, + 7.1995, + 2.2922, + 7.1995, + 2.3037, + 7.122, + 2.3037 + ], + "confidence": 1, + "span": { + "offset": 202, + "length": 1 + } + }, + { + "content": "11/14/2019", + "polygon": [ + 7.2528, + 2.2306, + 7.9952, + 2.2306, + 7.9952, + 2.3615, + 7.2528, + 2.3615 + ], + "confidence": 1, + "span": { + "offset": 204, + "length": 10 + } + }, + { + "content": "CUSTOMER", + "polygon": [ + 6.3253, + 2.4488, + 7.0608, + 2.4488, + 7.0608, + 2.5489, + 6.3253, + 2.5489 + ], + "confidence": 1, + "span": { + "offset": 215, + "length": 8 + } + }, + { + "content": "ID:", + "polygon": [ + 7.1153, + 2.45, + 7.2809, + 2.45, + 7.2809, + 2.5481, + 7.1153, + 2.5481 + ], + "confidence": 1, + "span": { + "offset": 224, + "length": 3 + } + }, + { + "content": "CID-12345", + "polygon": [ + 7.3369, + 2.4491, + 7.9951, + 2.4491, + 7.9951, + 2.5486, + 7.3369, + 2.5486 + ], + "confidence": 1, + "span": { + "offset": 228, + "length": 9 + } + }, + { + "content": "Microsoft", + "polygon": [ + 0.5943, + 2.6436, + 1.2303, + 2.6436, + 1.2303, + 2.759, + 0.5943, + 2.759 + ], + "confidence": 1, + "span": { + "offset": 238, + "length": 9 + } + }, + { + "content": "Corp", + "polygon": [ + 1.2808, + 2.651, + 1.586, + 2.651, + 1.586, + 2.7871, + 1.2808, + 2.7871 + ], + "confidence": 1, + "span": { + "offset": 248, + "length": 4 + } + }, + { + "content": "123", + "polygon": [ + 0.5945, + 2.8541, + 0.8213, + 2.8541, + 0.8213, + 2.9623, + 0.5945, + 2.9623 + ], + "confidence": 1, + "span": { + "offset": 253, + "length": 3 + } + }, + { + "content": "Other", + "polygon": [ + 0.875, + 2.8476, + 1.262, + 2.8476, + 1.262, + 2.9623, + 0.875, + 2.9623 + ], + "confidence": 1, + "span": { + "offset": 257, + "length": 5 + } + }, + { + "content": "St,", + "polygon": [ + 1.3058, + 2.8541, + 1.4633, + 2.8541, + 1.4633, + 2.9845, + 1.3058, + 2.9845 + ], + "confidence": 1, + "span": { + "offset": 263, + "length": 3 + } + }, + { + "content": "Redmond", + "polygon": [ + 0.5943, + 3.0513, + 1.2222, + 3.0513, + 1.2222, + 3.1656, + 0.5943, + 3.1656 + ], + "confidence": 1, + "span": { + "offset": 267, + "length": 7 + } + }, + { + "content": "WA,", + "polygon": [ + 1.2753, + 3.0585, + 1.5468, + 3.0585, + 1.5468, + 3.1878, + 1.2753, + 3.1878 + ], + "confidence": 1, + "span": { + "offset": 275, + "length": 3 + } + }, + { + "content": "98052", + "polygon": [ + 1.6033, + 3.0575, + 2.0083, + 3.0575, + 2.0083, + 3.1656, + 1.6033, + 3.1656 + ], + "confidence": 1, + "span": { + "offset": 279, + "length": 5 + } + }, + { + "content": "BILL", + "polygon": [ + 0.5909, + 3.5603, + 0.8438, + 3.5603, + 0.8438, + 3.6579, + 0.5909, + 3.6579 + ], + "confidence": 1, + "span": { + "offset": 285, + "length": 4 + } + }, + { + "content": "TO:", + "polygon": [ + 0.8846, + 3.559, + 1.1032, + 3.559, + 1.1032, + 3.6592, + 0.8846, + 3.6592 + ], + "confidence": 1, + "span": { + "offset": 290, + "length": 3 + } + }, + { + "content": "SHIP", + "polygon": [ + 3.3361, + 3.559, + 3.6278, + 3.559, + 3.6278, + 3.6592, + 3.3361, + 3.6592 + ], + "confidence": 1, + "span": { + "offset": 294, + "length": 4 + } + }, + { + "content": "TO:", + "polygon": [ + 3.6716, + 3.559, + 3.8903, + 3.559, + 3.8903, + 3.6592, + 3.6716, + 3.6592 + ], + "confidence": 1, + "span": { + "offset": 299, + "length": 3 + } + }, + { + "content": "SERVICE", + "polygon": [ + 6.2104, + 3.559, + 6.7361, + 3.559, + 6.7361, + 3.6592, + 6.2104, + 3.6592 + ], + "confidence": 1, + "span": { + "offset": 303, + "length": 7 + } + }, + { + "content": "ADDRESS:", + "polygon": [ + 6.7828, + 3.559, + 7.4232, + 3.559, + 7.4232, + 3.6592, + 6.7828, + 3.6592 + ], + "confidence": 1, + "span": { + "offset": 311, + "length": 8 + } + }, + { + "content": "Microsoft", + "polygon": [ + 0.5943, + 3.7641, + 1.2303, + 3.7641, + 1.2303, + 3.8794, + 0.5943, + 3.8794 + ], + "confidence": 1, + "span": { + "offset": 320, + "length": 9 + } + }, + { + "content": "Finance", + "polygon": [ + 1.287, + 3.7701, + 1.7878, + 3.7701, + 1.7878, + 3.8794, + 1.287, + 3.8794 + ], + "confidence": 1, + "span": { + "offset": 330, + "length": 7 + } + }, + { + "content": "Microsoft", + "polygon": [ + 3.3454, + 3.7641, + 3.9814, + 3.7641, + 3.9814, + 3.8794, + 3.3454, + 3.8794 + ], + "confidence": 1, + "span": { + "offset": 338, + "length": 9 + } + }, + { + "content": "Delivery", + "polygon": [ + 4.0381, + 3.7647, + 4.5762, + 3.7647, + 4.5762, + 3.9076, + 4.0381, + 3.9076 + ], + "confidence": 1, + "span": { + "offset": 348, + "length": 8 + } + }, + { + "content": "Microsoft", + "polygon": [ + 6.2197, + 3.7641, + 6.8557, + 3.7641, + 6.8557, + 3.8794, + 6.2197, + 3.8794 + ], + "confidence": 1, + "span": { + "offset": 357, + "length": 9 + } + }, + { + "content": "Services", + "polygon": [ + 6.9042, + 3.7701, + 7.4427, + 3.7701, + 7.4427, + 3.8794, + 6.9042, + 3.8794 + ], + "confidence": 1, + "span": { + "offset": 367, + "length": 8 + } + }, + { + "content": "123", + "polygon": [ + 0.5945, + 3.9746, + 0.8213, + 3.9746, + 0.8213, + 4.0827, + 0.5945, + 4.0827 + ], + "confidence": 1, + "span": { + "offset": 376, + "length": 3 + } + }, + { + "content": "Bill", + "polygon": [ + 0.8842, + 3.9681, + 1.0657, + 3.9681, + 1.0657, + 4.0817, + 0.8842, + 4.0817 + ], + "confidence": 1, + "span": { + "offset": 380, + "length": 4 + } + }, + { + "content": "St,", + "polygon": [ + 1.1222, + 3.9746, + 1.2765, + 3.9746, + 1.2765, + 4.1049, + 1.1222, + 4.1049 + ], + "confidence": 1, + "span": { + "offset": 385, + "length": 3 + } + }, + { + "content": "123", + "polygon": [ + 3.3456, + 3.9746, + 3.5724, + 3.9746, + 3.5724, + 4.0827, + 3.3456, + 4.0827 + ], + "confidence": 1, + "span": { + "offset": 389, + "length": 3 + } + }, + { + "content": "Ship", + "polygon": [ + 3.6239, + 3.9681, + 3.9042, + 3.9681, + 3.9042, + 4.1109, + 3.6239, + 4.1109 + ], + "confidence": 1, + "span": { + "offset": 393, + "length": 4 + } + }, + { + "content": "St,", + "polygon": [ + 3.9536, + 3.9746, + 4.1111, + 3.9746, + 4.1111, + 4.1049, + 3.9536, + 4.1049 + ], + "confidence": 1, + "span": { + "offset": 398, + "length": 3 + } + }, + { + "content": "123", + "polygon": [ + 6.2199, + 3.9746, + 6.4467, + 3.9746, + 6.4467, + 4.0827, + 6.2199, + 4.0827 + ], + "confidence": 1, + "span": { + "offset": 402, + "length": 3 + } + }, + { + "content": "Service", + "polygon": [ + 6.4985, + 3.9734, + 6.9738, + 3.9734, + 6.9738, + 4.0827, + 6.4985, + 4.0827 + ], + "confidence": 1, + "span": { + "offset": 406, + "length": 7 + } + }, + { + "content": "St,", + "polygon": [ + 7.0246, + 3.9746, + 7.1821, + 3.9746, + 7.1821, + 4.1049, + 7.0246, + 4.1049 + ], + "confidence": 1, + "span": { + "offset": 414, + "length": 3 + } + }, + { + "content": "Redmond", + "polygon": [ + 0.5943, + 4.1717, + 1.2222, + 4.1717, + 1.2222, + 4.2861, + 0.5943, + 4.2861 + ], + "confidence": 1, + "span": { + "offset": 418, + "length": 7 + } + }, + { + "content": "WA,", + "polygon": [ + 1.2753, + 4.1789, + 1.5468, + 4.1789, + 1.5468, + 4.3082, + 1.2753, + 4.3082 + ], + "confidence": 1, + "span": { + "offset": 426, + "length": 3 + } + }, + { + "content": "98052", + "polygon": [ + 1.6033, + 4.1779, + 2.0083, + 4.1779, + 2.0083, + 4.2861, + 1.6033, + 4.2861 + ], + "confidence": 1, + "span": { + "offset": 430, + "length": 5 + } + }, + { + "content": "Redmond", + "polygon": [ + 3.3454, + 4.1717, + 3.9732, + 4.1717, + 3.9732, + 4.2861, + 3.3454, + 4.2861 + ], + "confidence": 1, + "span": { + "offset": 436, + "length": 7 + } + }, + { + "content": "WA,", + "polygon": [ + 4.0264, + 4.1789, + 4.2979, + 4.1789, + 4.2979, + 4.3082, + 4.0264, + 4.3082 + ], + "confidence": 1, + "span": { + "offset": 444, + "length": 3 + } + }, + { + "content": "98052", + "polygon": [ + 4.3544, + 4.1779, + 4.7594, + 4.1779, + 4.7594, + 4.2861, + 4.3544, + 4.2861 + ], + "confidence": 1, + "span": { + "offset": 448, + "length": 5 + } + }, + { + "content": "Redmond", + "polygon": [ + 6.2197, + 4.1717, + 6.8475, + 4.1717, + 6.8475, + 4.2861, + 6.2197, + 4.2861 + ], + "confidence": 1, + "span": { + "offset": 454, + "length": 7 + } + }, + { + "content": "WA,", + "polygon": [ + 6.9007, + 4.1789, + 7.1722, + 4.1789, + 7.1722, + 4.3082, + 6.9007, + 4.3082 + ], + "confidence": 1, + "span": { + "offset": 462, + "length": 3 + } + }, + { + "content": "98052", + "polygon": [ + 7.2287, + 4.1779, + 7.6337, + 4.1779, + 7.6337, + 4.2861, + 7.2287, + 4.2861 + ], + "confidence": 1, + "span": { + "offset": 466, + "length": 5 + } + }, + { + "content": "SALESPERSON", + "polygon": [ + 0.7018, + 4.6528, + 1.6092, + 4.6528, + 1.6092, + 4.7529, + 0.7018, + 4.7529 + ], + "confidence": 1, + "span": { + "offset": 472, + "length": 11 + } + }, + { + "content": "P.O.", + "polygon": [ + 2.1216, + 4.6528, + 2.3788, + 4.6528, + 2.3788, + 4.7529, + 2.1216, + 4.7529 + ], + "confidence": 1, + "span": { + "offset": 484, + "length": 4 + } + }, + { + "content": "NUMBER", + "polygon": [ + 2.4376, + 4.654, + 3.0155, + 4.654, + 3.0155, + 4.7529, + 2.4376, + 4.7529 + ], + "confidence": 1, + "span": { + "offset": 489, + "length": 6 + } + }, + { + "content": "REQUISITIONER", + "polygon": [ + 3.4953, + 4.6528, + 4.5157, + 4.6528, + 4.5157, + 4.7687, + 3.4953, + 4.7687 + ], + "confidence": 1, + "span": { + "offset": 496, + "length": 13 + } + }, + { + "content": "SHIPPED", + "polygon": [ + 4.81, + 4.6528, + 5.362, + 4.6528, + 5.362, + 4.7529, + 4.81, + 4.7529 + ], + "confidence": 1, + "span": { + "offset": 510, + "length": 7 + } + }, + { + "content": "VIA", + "polygon": [ + 5.409, + 4.654, + 5.6317, + 4.654, + 5.6317, + 4.7517, + 5.409, + 4.7517 + ], + "confidence": 1, + "span": { + "offset": 518, + "length": 3 + } + }, + { + "content": "F.O.B.", + "polygon": [ + 5.8696, + 4.6528, + 6.2467, + 4.6528, + 6.2467, + 4.7529, + 5.8696, + 4.7529 + ], + "confidence": 1, + "span": { + "offset": 522, + "length": 6 + } + }, + { + "content": "POINT", + "polygon": [ + 6.3054, + 4.6528, + 6.706, + 4.6528, + 6.706, + 4.7529, + 6.3054, + 4.7529 + ], + "confidence": 1, + "span": { + "offset": 529, + "length": 5 + } + }, + { + "content": "TERMS", + "polygon": [ + 7.1806, + 4.6528, + 7.6304, + 4.6528, + 7.6304, + 4.7529, + 7.1806, + 4.7529 + ], + "confidence": 1, + "span": { + "offset": 535, + "length": 5 + } + }, + { + "content": "PO-3333", + "polygon": [ + 1.9114, + 4.9282, + 2.4718, + 4.9282, + 2.4718, + 5.0363, + 1.9114, + 5.0363 + ], + "confidence": 1, + "span": { + "offset": 541, + "length": 7 + } + }, + { + "content": "DATE", + "polygon": [ + 0.7409, + 5.421, + 1.0744, + 5.421, + 1.0744, + 5.5186, + 0.7409, + 5.5186 + ], + "confidence": 1, + "span": { + "offset": 549, + "length": 4 + } + }, + { + "content": "ITEM", + "polygon": [ + 1.4213, + 5.421, + 1.7338, + 5.421, + 1.7338, + 5.5186, + 1.4213, + 5.5186 + ], + "confidence": 1, + "span": { + "offset": 554, + "length": 4 + } + }, + { + "content": "CODE", + "polygon": [ + 1.7893, + 5.4197, + 2.1407, + 5.4197, + 2.1407, + 5.5199, + 1.7893, + 5.5199 + ], + "confidence": 1, + "span": { + "offset": 559, + "length": 4 + } + }, + { + "content": "DESCRIPTION", + "polygon": [ + 2.8516, + 5.4197, + 3.7134, + 5.4197, + 3.7134, + 5.5199, + 2.8516, + 5.5199 + ], + "confidence": 1, + "span": { + "offset": 564, + "length": 11 + } + }, + { + "content": "QTY", + "polygon": [ + 4.4043, + 5.4197, + 4.6631, + 5.4197, + 4.6631, + 5.5357, + 4.4043, + 5.5357 + ], + "confidence": 1, + "span": { + "offset": 576, + "length": 3 + } + }, + { + "content": "UM", + "polygon": [ + 5.049, + 5.421, + 5.2654, + 5.421, + 5.2654, + 5.5199, + 5.049, + 5.5199 + ], + "confidence": 1, + "span": { + "offset": 580, + "length": 2 + } + }, + { + "content": "PRICE", + "polygon": [ + 5.8563, + 5.4199, + 6.2163, + 5.4199, + 6.2163, + 5.5197, + 5.8563, + 5.5197 + ], + "confidence": 1, + "span": { + "offset": 583, + "length": 5 + } + }, + { + "content": "TAX", + "polygon": [ + 6.7169, + 5.421, + 6.974, + 5.421, + 6.974, + 5.5186, + 6.7169, + 5.5186 + ], + "confidence": 1, + "span": { + "offset": 589, + "length": 3 + } + }, + { + "content": "AMOUNT", + "polygon": [ + 7.2847, + 5.4197, + 7.9039, + 5.4197, + 7.9039, + 5.5199, + 7.2847, + 5.5199 + ], + "confidence": 1, + "span": { + "offset": 593, + "length": 6 + } + }, + { + "content": "3/4/2021", + "polygon": [ + 0.592, + 5.682, + 1.2092, + 5.682, + 1.2092, + 5.8243, + 0.592, + 5.8243 + ], + "confidence": 1, + "span": { + "offset": 600, + "length": 8 + } + }, + { + "content": "A123", + "polygon": [ + 1.6069, + 5.6948, + 1.9417, + 5.6948, + 1.9417, + 5.803, + 1.6069, + 5.803 + ], + "confidence": 1, + "span": { + "offset": 609, + "length": 4 + } + }, + { + "content": "Consulting", + "polygon": [ + 2.3388, + 5.6883, + 3.0438, + 5.6883, + 3.0438, + 5.8312, + 2.3388, + 5.8312 + ], + "confidence": 1, + "span": { + "offset": 614, + "length": 10 + } + }, + { + "content": "Services", + "polygon": [ + 3.0925, + 5.6937, + 3.6278, + 5.6937, + 3.6278, + 5.803, + 3.0925, + 5.803 + ], + "confidence": 1, + "span": { + "offset": 625, + "length": 8 + } + }, + { + "content": "2", + "polygon": [ + 4.5977, + 5.6948, + 4.6635, + 5.6948, + 4.6635, + 5.8017, + 4.5977, + 5.8017 + ], + "confidence": 1, + "span": { + "offset": 634, + "length": 1 + } + }, + { + "content": "hours", + "polygon": [ + 4.8444, + 5.6883, + 5.2071, + 5.6883, + 5.2071, + 5.803, + 4.8444, + 5.803 + ], + "confidence": 1, + "span": { + "offset": 636, + "length": 5 + } + }, + { + "content": "$30.00", + "polygon": [ + 5.9669, + 5.6777, + 6.4142, + 5.6777, + 6.4142, + 5.8215, + 5.9669, + 5.8215 + ], + "confidence": 1, + "span": { + "offset": 642, + "length": 6 + } + }, + { + "content": "10%", + "polygon": [ + 6.7168, + 5.6932, + 6.9826, + 5.6932, + 6.9826, + 5.8045, + 6.7168, + 5.8045 + ], + "confidence": 1, + "span": { + "offset": 649, + "length": 3 + } + }, + { + "content": "$60.00", + "polygon": [ + 7.4642, + 5.6777, + 7.9116, + 5.6777, + 7.9116, + 5.8215, + 7.4642, + 5.8215 + ], + "confidence": 1, + "span": { + "offset": 653, + "length": 6 + } + }, + { + "content": "3/5/2021", + "polygon": [ + 0.592, + 5.9787, + 1.2088, + 5.9787, + 1.2088, + 6.121, + 0.592, + 6.121 + ], + "confidence": 1, + "span": { + "offset": 660, + "length": 8 + } + }, + { + "content": "B456", + "polygon": [ + 1.6214, + 5.9915, + 1.9419, + 5.9915, + 1.9419, + 6.0997, + 1.6214, + 6.0997 + ], + "confidence": 1, + "span": { + "offset": 669, + "length": 4 + } + }, + { + "content": "Document", + "polygon": [ + 2.345, + 5.993, + 3.0318, + 5.993, + 3.0318, + 6.0997, + 2.345, + 6.0997 + ], + "confidence": 1, + "span": { + "offset": 674, + "length": 8 + } + }, + { + "content": "Fee", + "polygon": [ + 3.0887, + 5.993, + 3.3096, + 5.993, + 3.3096, + 6.0997, + 3.0887, + 6.0997 + ], + "confidence": 1, + "span": { + "offset": 683, + "length": 3 + } + }, + { + "content": "3", + "polygon": [ + 4.5967, + 5.9915, + 4.6627, + 5.9915, + 4.6627, + 6.0997, + 4.5967, + 6.0997 + ], + "confidence": 1, + "span": { + "offset": 687, + "length": 1 + } + }, + { + "content": "$10.00", + "polygon": [ + 5.9669, + 5.9743, + 6.4142, + 5.9743, + 6.4142, + 6.1182, + 5.9669, + 6.1182 + ], + "confidence": 1, + "span": { + "offset": 689, + "length": 6 + } + }, + { + "content": "5%", + "polygon": [ + 6.7508, + 5.9898, + 6.9393, + 5.9898, + 6.9393, + 6.1012, + 6.7508, + 6.1012 + ], + "confidence": 1, + "span": { + "offset": 696, + "length": 2 + } + }, + { + "content": "$30.00", + "polygon": [ + 7.4642, + 5.9743, + 7.9116, + 5.9743, + 7.9116, + 6.1182, + 7.4642, + 6.1182 + ], + "confidence": 1, + "span": { + "offset": 699, + "length": 6 + } + }, + { + "content": "3/6/2021", + "polygon": [ + 0.592, + 6.2789, + 1.2088, + 6.2789, + 1.2088, + 6.4213, + 0.592, + 6.4213 + ], + "confidence": 1, + "span": { + "offset": 706, + "length": 8 + } + }, + { + "content": "C789", + "polygon": [ + 1.6152, + 6.2918, + 1.94, + 6.2918, + 1.94, + 6.3999, + 1.6152, + 6.3999 + ], + "confidence": 1, + "span": { + "offset": 715, + "length": 4 + } + }, + { + "content": "Printing", + "polygon": [ + 2.345, + 6.2906, + 2.8575, + 6.2906, + 2.8575, + 6.4281, + 2.345, + 6.4281 + ], + "confidence": 1, + "span": { + "offset": 720, + "length": 8 + } + }, + { + "content": "Fee", + "polygon": [ + 2.9143, + 6.2933, + 3.1351, + 6.2933, + 3.1351, + 6.3999, + 2.9143, + 6.3999 + ], + "confidence": 1, + "span": { + "offset": 729, + "length": 3 + } + }, + { + "content": "10", + "polygon": [ + 4.5158, + 6.2918, + 4.6637, + 6.2918, + 4.6637, + 6.3999, + 4.5158, + 6.3999 + ], + "confidence": 1, + "span": { + "offset": 733, + "length": 2 + } + }, + { + "content": "pages", + "polygon": [ + 4.8444, + 6.3196, + 5.2199, + 6.3196, + 5.2199, + 6.4281, + 4.8444, + 6.4281 + ], + "confidence": 1, + "span": { + "offset": 736, + "length": 5 + } + }, + { + "content": "$1.00", + "polygon": [ + 6.0502, + 6.2746, + 6.4142, + 6.2746, + 6.4142, + 6.4184, + 6.0502, + 6.4184 + ], + "confidence": 1, + "span": { + "offset": 742, + "length": 5 + } + }, + { + "content": "20%", + "polygon": [ + 6.712, + 6.2901, + 6.9826, + 6.2901, + 6.9826, + 6.4014, + 6.712, + 6.4014 + ], + "confidence": 1, + "span": { + "offset": 748, + "length": 3 + } + }, + { + "content": "$10.00", + "polygon": [ + 7.4642, + 6.2746, + 7.9116, + 6.2746, + 7.9116, + 6.4184, + 7.4642, + 6.4184 + ], + "confidence": 1, + "span": { + "offset": 752, + "length": 6 + } + }, + { + "content": "SUBTOTAL", + "polygon": [ + 6.0282, + 6.9118, + 6.7309, + 6.9118, + 6.7309, + 7.0199, + 6.0282, + 7.0199 + ], + "confidence": 1, + "span": { + "offset": 759, + "length": 8 + } + }, + { + "content": "$100.00", + "polygon": [ + 7.3842, + 6.8679, + 7.9181, + 6.8679, + 7.9181, + 7.0118, + 7.3842, + 7.0118 + ], + "confidence": 1, + "span": { + "offset": 768, + "length": 7 + } + }, + { + "content": "SALES", + "polygon": [ + 6.0382, + 7.2089, + 6.4262, + 7.2089, + 6.4262, + 7.317, + 6.0382, + 7.317 + ], + "confidence": 1, + "span": { + "offset": 776, + "length": 5 + } + }, + { + "content": "TAX", + "polygon": [ + 6.4702, + 7.2099, + 6.728, + 7.2099, + 6.728, + 7.316, + 6.4702, + 7.316 + ], + "confidence": 1, + "span": { + "offset": 782, + "length": 3 + } + }, + { + "content": "$10.00", + "polygon": [ + 7.4709, + 7.165, + 7.9182, + 7.165, + 7.9182, + 7.3089, + 7.4709, + 7.3089 + ], + "confidence": 1, + "span": { + "offset": 786, + "length": 6 + } + }, + { + "content": "TOTAL", + "polygon": [ + 6.2969, + 7.5089, + 6.7309, + 7.5089, + 6.7309, + 7.617, + 6.2969, + 7.617 + ], + "confidence": 1, + "span": { + "offset": 793, + "length": 5 + } + }, + { + "content": "$110.00", + "polygon": [ + 7.3842, + 7.465, + 7.9181, + 7.465, + 7.9181, + 7.6089, + 7.3842, + 7.6089 + ], + "confidence": 1, + "span": { + "offset": 799, + "length": 7 + } + }, + { + "content": "PREVIOUS", + "polygon": [ + 4.8126, + 7.8055, + 5.4789, + 7.8055, + 5.4789, + 7.9137, + 4.8126, + 7.9137 + ], + "confidence": 1, + "span": { + "offset": 807, + "length": 8 + } + }, + { + "content": "UNPAID", + "polygon": [ + 5.5362, + 7.8065, + 6.057, + 7.8065, + 6.057, + 7.9137, + 5.5362, + 7.9137 + ], + "confidence": 1, + "span": { + "offset": 816, + "length": 6 + } + }, + { + "content": "BALANCE", + "polygon": [ + 6.1164, + 7.8057, + 6.7249, + 7.8057, + 6.7249, + 7.9135, + 6.1164, + 7.9135 + ], + "confidence": 1, + "span": { + "offset": 823, + "length": 7 + } + }, + { + "content": "$500.00", + "polygon": [ + 7.3842, + 7.7617, + 7.9181, + 7.7617, + 7.9181, + 7.9055, + 7.3842, + 7.9055 + ], + "confidence": 1, + "span": { + "offset": 831, + "length": 7 + } + }, + { + "content": "AMOUNT", + "polygon": [ + 5.7652, + 8.1022, + 6.4055, + 8.1022, + 6.4055, + 8.2104, + 5.7652, + 8.2104 + ], + "confidence": 1, + "span": { + "offset": 839, + "length": 6 + } + }, + { + "content": "DUE", + "polygon": [ + 6.4562, + 8.1032, + 6.725, + 8.1032, + 6.725, + 8.2104, + 6.4562, + 8.2104 + ], + "confidence": 1, + "span": { + "offset": 846, + "length": 3 + } + }, + { + "content": "$610.00", + "polygon": [ + 7.3842, + 8.0584, + 7.9181, + 8.0584, + 7.9181, + 8.2022, + 7.3842, + 8.2022 + ], + "confidence": 1, + "span": { + "offset": 850, + "length": 7 + } + }, + { + "content": "THANK", + "polygon": [ + 3.129, + 8.5453, + 3.5887, + 8.5453, + 3.5887, + 8.6429, + 3.129, + 8.6429 + ], + "confidence": 1, + "span": { + "offset": 858, + "length": 5 + } + }, + { + "content": "YOU", + "polygon": [ + 3.6316, + 8.544, + 3.9064, + 8.544, + 3.9064, + 8.6442, + 3.6316, + 8.6442 + ], + "confidence": 1, + "span": { + "offset": 864, + "length": 3 + } + }, + { + "content": "FOR", + "polygon": [ + 3.9671, + 8.544, + 4.2187, + 8.544, + 4.2187, + 8.6442, + 3.9671, + 8.6442 + ], + "confidence": 1, + "span": { + "offset": 868, + "length": 3 + } + }, + { + "content": "YOUR", + "polygon": [ + 4.2638, + 8.544, + 4.6347, + 8.544, + 4.6347, + 8.6442, + 4.2638, + 8.6442 + ], + "confidence": 1, + "span": { + "offset": 872, + "length": 4 + } + }, + { + "content": "BUSINESS!", + "polygon": [ + 4.6859, + 8.539, + 5.356, + 8.539, + 5.356, + 8.6442, + 4.6859, + 8.6442 + ], + "confidence": 1, + "span": { + "offset": 877, + "length": 9 + } + }, + { + "content": "REMIT", + "polygon": [ + 0.5909, + 9.1619, + 1.0014, + 9.1619, + 1.0014, + 9.2596, + 0.5909, + 9.2596 + ], + "confidence": 1, + "span": { + "offset": 887, + "length": 5 + } + }, + { + "content": "TO:", + "polygon": [ + 1.0446, + 9.1607, + 1.2603, + 9.1607, + 1.2603, + 9.2608, + 1.0446, + 9.2608 + ], + "confidence": 1, + "span": { + "offset": 893, + "length": 3 + } + }, + { + "content": "Contoso", + "polygon": [ + 0.5882, + 9.3697, + 1.1337, + 9.3697, + 1.1337, + 9.4777, + 0.5882, + 9.4777 + ], + "confidence": 1, + "span": { + "offset": 897, + "length": 7 + } + }, + { + "content": "Billing", + "polygon": [ + 1.1905, + 9.3631, + 1.5828, + 9.3631, + 1.5828, + 9.5059, + 1.1905, + 9.5059 + ], + "confidence": 1, + "span": { + "offset": 905, + "length": 7 + } + }, + { + "content": "123", + "polygon": [ + 0.5945, + 9.5728, + 0.8213, + 9.5728, + 0.8213, + 9.681, + 0.5945, + 9.681 + ], + "confidence": 1, + "span": { + "offset": 913, + "length": 3 + } + }, + { + "content": "Remit", + "polygon": [ + 0.881, + 9.5717, + 1.264, + 9.5717, + 1.264, + 9.681, + 0.881, + 9.681 + ], + "confidence": 1, + "span": { + "offset": 917, + "length": 5 + } + }, + { + "content": "St", + "polygon": [ + 1.3125, + 9.5728, + 1.4337, + 9.5728, + 1.4337, + 9.681, + 1.3125, + 9.681 + ], + "confidence": 1, + "span": { + "offset": 923, + "length": 2 + } + }, + { + "content": "New", + "polygon": [ + 0.5943, + 9.7808, + 0.8848, + 9.7808, + 0.8848, + 9.8877, + 0.5943, + 9.8877 + ], + "confidence": 1, + "span": { + "offset": 926, + "length": 3 + } + }, + { + "content": "York,", + "polygon": [ + 0.9293, + 9.773, + 1.2568, + 9.773, + 1.2568, + 9.9098, + 0.9293, + 9.9098 + ], + "confidence": 1, + "span": { + "offset": 930, + "length": 5 + } + }, + { + "content": "NY,", + "polygon": [ + 1.3205, + 9.7805, + 1.5233, + 9.7805, + 1.5233, + 9.9098, + 1.3205, + 9.9098 + ], + "confidence": 1, + "span": { + "offset": 936, + "length": 3 + } + }, + { + "content": "10001", + "polygon": [ + 1.5903, + 9.7795, + 1.9882, + 9.7795, + 1.9882, + 9.8877, + 1.5903, + 9.8877 + ], + "confidence": 1, + "span": { + "offset": 940, + "length": 5 + } + } + ], + "selectionMarks": [ + { + "state": "unselected", + "polygon": [ + 4.3231, + 5.6279, + 4.7562, + 5.6279, + 4.7562, + 5.8654, + 4.3231, + 5.8654 + ], + "confidence": 0.212, + "span": { + "offset": 946, + "length": 12 + } + } + ], + "lines": [ + { + "content": "CONTOSO LTD.", + "polygon": [ + 0.5911, + 0.6857, + 2.3181, + 0.6857, + 2.3181, + 0.8664, + 0.5911, + 0.8664 + ], + "spans": [ + { + "offset": 0, + "length": 12 + } + ] + }, + { + "content": "INVOICE", + "polygon": [ + 7.0751, + 0.589, + 7.9886, + 0.589, + 7.9886, + 0.7697, + 7.0751, + 0.7697 + ], + "spans": [ + { + "offset": 13, + "length": 7 + } + ] + }, + { + "content": "Contoso Headquarters", + "polygon": [ + 0.5882, + 1.4239, + 2.0978, + 1.4239, + 2.0978, + 1.5664, + 0.5882, + 1.5664 + ], + "spans": [ + { + "offset": 21, + "length": 20 + } + ] + }, + { + "content": "INVOICE: INV-100", + "polygon": [ + 6.8599, + 1.4217, + 7.9988, + 1.4217, + 7.9988, + 1.5218, + 6.8599, + 1.5218 + ], + "spans": [ + { + "offset": 42, + "length": 16 + } + ] + }, + { + "content": "123 456th St", + "polygon": [ + 0.5945, + 1.6092, + 1.3812, + 1.6092, + 1.3812, + 1.742, + 0.5945, + 1.742 + ], + "spans": [ + { + "offset": 59, + "length": 12 + } + ] + }, + { + "content": "INVOICE DATE: 11/15/2019", + "polygon": [ + 6.2263, + 1.6139, + 7.993, + 1.6139, + 7.993, + 1.7449, + 6.2263, + 1.7449 + ], + "spans": [ + { + "offset": 72, + "length": 24 + } + ] + }, + { + "content": "New York, NY, 10001", + "polygon": [ + 0.5943, + 1.8307, + 1.9894, + 1.8307, + 1.9894, + 1.9675, + 0.5943, + 1.9675 + ], + "spans": [ + { + "offset": 97, + "length": 19 + } + ] + }, + { + "content": "DUE DATE: 12/15/2019", + "polygon": [ + 6.4966, + 1.8206, + 7.993, + 1.8206, + 7.993, + 1.9515, + 6.4966, + 1.9515 + ], + "spans": [ + { + "offset": 117, + "length": 20 + } + ] + }, + { + "content": "CUSTOMER NAME: MICROSOFT CORPORATION", + "polygon": [ + 4.9513, + 2.0388, + 7.9825, + 2.0388, + 7.9825, + 2.1389, + 4.9513, + 2.1389 + ], + "spans": [ + { + "offset": 138, + "length": 36 + } + ] + }, + { + "content": "SERVICE PERIOD: 10/14/2019 – 11/14/2019", + "polygon": [ + 5.1667, + 2.2306, + 7.9952, + 2.2306, + 7.9952, + 2.3615, + 5.1667, + 2.3615 + ], + "spans": [ + { + "offset": 175, + "length": 39 + } + ] + }, + { + "content": "CUSTOMER ID: CID-12345", + "polygon": [ + 6.3253, + 2.4488, + 7.9951, + 2.4488, + 7.9951, + 2.5489, + 6.3253, + 2.5489 + ], + "spans": [ + { + "offset": 215, + "length": 22 + } + ] + }, + { + "content": "Microsoft Corp", + "polygon": [ + 0.5943, + 2.6436, + 1.586, + 2.6436, + 1.586, + 2.7871, + 0.5943, + 2.7871 + ], + "spans": [ + { + "offset": 238, + "length": 14 + } + ] + }, + { + "content": "123 Other St,", + "polygon": [ + 0.5945, + 2.8476, + 1.4633, + 2.8476, + 1.4633, + 2.9845, + 0.5945, + 2.9845 + ], + "spans": [ + { + "offset": 253, + "length": 13 + } + ] + }, + { + "content": "Redmond WA, 98052", + "polygon": [ + 0.5943, + 3.0513, + 2.0083, + 3.0513, + 2.0083, + 3.1878, + 0.5943, + 3.1878 + ], + "spans": [ + { + "offset": 267, + "length": 17 + } + ] + }, + { + "content": "BILL TO:", + "polygon": [ + 0.5909, + 3.559, + 1.1032, + 3.559, + 1.1032, + 3.6592, + 0.5909, + 3.6592 + ], + "spans": [ + { + "offset": 285, + "length": 8 + } + ] + }, + { + "content": "SHIP TO:", + "polygon": [ + 3.3361, + 3.559, + 3.8903, + 3.559, + 3.8903, + 3.6592, + 3.3361, + 3.6592 + ], + "spans": [ + { + "offset": 294, + "length": 8 + } + ] + }, + { + "content": "SERVICE ADDRESS:", + "polygon": [ + 6.2104, + 3.559, + 7.4232, + 3.559, + 7.4232, + 3.6592, + 6.2104, + 3.6592 + ], + "spans": [ + { + "offset": 303, + "length": 16 + } + ] + }, + { + "content": "Microsoft Finance", + "polygon": [ + 0.5943, + 3.7641, + 1.7878, + 3.7641, + 1.7878, + 3.8794, + 0.5943, + 3.8794 + ], + "spans": [ + { + "offset": 320, + "length": 17 + } + ] + }, + { + "content": "Microsoft Delivery", + "polygon": [ + 3.3454, + 3.7641, + 4.5762, + 3.7641, + 4.5762, + 3.9076, + 3.3454, + 3.9076 + ], + "spans": [ + { + "offset": 338, + "length": 18 + } + ] + }, + { + "content": "Microsoft Services", + "polygon": [ + 6.2197, + 3.7641, + 7.4427, + 3.7641, + 7.4427, + 3.8794, + 6.2197, + 3.8794 + ], + "spans": [ + { + "offset": 357, + "length": 18 + } + ] + }, + { + "content": "123 Bill St,", + "polygon": [ + 0.5945, + 3.9681, + 1.2765, + 3.9681, + 1.2765, + 4.1049, + 0.5945, + 4.1049 + ], + "spans": [ + { + "offset": 376, + "length": 12 + } + ] + }, + { + "content": "123 Ship St,", + "polygon": [ + 3.3456, + 3.9681, + 4.1111, + 3.9681, + 4.1111, + 4.1109, + 3.3456, + 4.1109 + ], + "spans": [ + { + "offset": 389, + "length": 12 + } + ] + }, + { + "content": "123 Service St,", + "polygon": [ + 6.2199, + 3.9734, + 7.1821, + 3.9734, + 7.1821, + 4.1049, + 6.2199, + 4.1049 + ], + "spans": [ + { + "offset": 402, + "length": 15 + } + ] + }, + { + "content": "Redmond WA, 98052", + "polygon": [ + 0.5943, + 4.1717, + 2.0083, + 4.1717, + 2.0083, + 4.3082, + 0.5943, + 4.3082 + ], + "spans": [ + { + "offset": 418, + "length": 17 + } + ] + }, + { + "content": "Redmond WA, 98052", + "polygon": [ + 3.3454, + 4.1717, + 4.7594, + 4.1717, + 4.7594, + 4.3082, + 3.3454, + 4.3082 + ], + "spans": [ + { + "offset": 436, + "length": 17 + } + ] + }, + { + "content": "Redmond WA, 98052", + "polygon": [ + 6.2197, + 4.1717, + 7.6337, + 4.1717, + 7.6337, + 4.3082, + 6.2197, + 4.3082 + ], + "spans": [ + { + "offset": 454, + "length": 17 + } + ] + }, + { + "content": "SALESPERSON", + "polygon": [ + 0.7018, + 4.6528, + 1.6092, + 4.6528, + 1.6092, + 4.7529, + 0.7018, + 4.7529 + ], + "spans": [ + { + "offset": 472, + "length": 11 + } + ] + }, + { + "content": "P.O. NUMBER", + "polygon": [ + 2.1216, + 4.6528, + 3.0155, + 4.6528, + 3.0155, + 4.7529, + 2.1216, + 4.7529 + ], + "spans": [ + { + "offset": 484, + "length": 11 + } + ] + }, + { + "content": "REQUISITIONER", + "polygon": [ + 3.4953, + 4.6528, + 4.5157, + 4.6528, + 4.5157, + 4.7687, + 3.4953, + 4.7687 + ], + "spans": [ + { + "offset": 496, + "length": 13 + } + ] + }, + { + "content": "SHIPPED VIA", + "polygon": [ + 4.81, + 4.6528, + 5.6317, + 4.6528, + 5.6317, + 4.7529, + 4.81, + 4.7529 + ], + "spans": [ + { + "offset": 510, + "length": 11 + } + ] + }, + { + "content": "F.O.B. POINT", + "polygon": [ + 5.8696, + 4.6528, + 6.706, + 4.6528, + 6.706, + 4.7529, + 5.8696, + 4.7529 + ], + "spans": [ + { + "offset": 522, + "length": 12 + } + ] + }, + { + "content": "TERMS", + "polygon": [ + 7.1806, + 4.6528, + 7.6304, + 4.6528, + 7.6304, + 4.7529, + 7.1806, + 4.7529 + ], + "spans": [ + { + "offset": 535, + "length": 5 + } + ] + }, + { + "content": "PO-3333", + "polygon": [ + 1.9114, + 4.9282, + 2.4718, + 4.9282, + 2.4718, + 5.0363, + 1.9114, + 5.0363 + ], + "spans": [ + { + "offset": 541, + "length": 7 + } + ] + }, + { + "content": "DATE", + "polygon": [ + 0.7409, + 5.421, + 1.0744, + 5.421, + 1.0744, + 5.5186, + 0.7409, + 5.5186 + ], + "spans": [ + { + "offset": 549, + "length": 4 + } + ] + }, + { + "content": "ITEM CODE", + "polygon": [ + 1.4213, + 5.4197, + 2.1407, + 5.4197, + 2.1407, + 5.5199, + 1.4213, + 5.5199 + ], + "spans": [ + { + "offset": 554, + "length": 9 + } + ] + }, + { + "content": "DESCRIPTION", + "polygon": [ + 2.8516, + 5.4197, + 3.7134, + 5.4197, + 3.7134, + 5.5199, + 2.8516, + 5.5199 + ], + "spans": [ + { + "offset": 564, + "length": 11 + } + ] + }, + { + "content": "QTY", + "polygon": [ + 4.4043, + 5.4197, + 4.6631, + 5.4197, + 4.6631, + 5.5357, + 4.4043, + 5.5357 + ], + "spans": [ + { + "offset": 576, + "length": 3 + } + ] + }, + { + "content": "UM", + "polygon": [ + 5.049, + 5.421, + 5.2654, + 5.421, + 5.2654, + 5.5199, + 5.049, + 5.5199 + ], + "spans": [ + { + "offset": 580, + "length": 2 + } + ] + }, + { + "content": "PRICE", + "polygon": [ + 5.8563, + 5.4199, + 6.2163, + 5.4199, + 6.2163, + 5.5197, + 5.8563, + 5.5197 + ], + "spans": [ + { + "offset": 583, + "length": 5 + } + ] + }, + { + "content": "TAX", + "polygon": [ + 6.7169, + 5.421, + 6.974, + 5.421, + 6.974, + 5.5186, + 6.7169, + 5.5186 + ], + "spans": [ + { + "offset": 589, + "length": 3 + } + ] + }, + { + "content": "AMOUNT", + "polygon": [ + 7.2847, + 5.4197, + 7.9039, + 5.4197, + 7.9039, + 5.5199, + 7.2847, + 5.5199 + ], + "spans": [ + { + "offset": 593, + "length": 6 + } + ] + }, + { + "content": "3/4/2021", + "polygon": [ + 0.592, + 5.682, + 1.2092, + 5.682, + 1.2092, + 5.8243, + 0.592, + 5.8243 + ], + "spans": [ + { + "offset": 600, + "length": 8 + } + ] + }, + { + "content": "A123", + "polygon": [ + 1.6069, + 5.6948, + 1.9417, + 5.6948, + 1.9417, + 5.803, + 1.6069, + 5.803 + ], + "spans": [ + { + "offset": 609, + "length": 4 + } + ] + }, + { + "content": "Consulting Services", + "polygon": [ + 2.3388, + 5.6883, + 3.6278, + 5.6883, + 3.6278, + 5.8312, + 2.3388, + 5.8312 + ], + "spans": [ + { + "offset": 614, + "length": 19 + } + ] + }, + { + "content": "2", + "polygon": [ + 4.5977, + 5.6948, + 4.6635, + 5.6948, + 4.6635, + 5.8017, + 4.5977, + 5.8017 + ], + "spans": [ + { + "offset": 634, + "length": 1 + } + ] + }, + { + "content": "hours", + "polygon": [ + 4.8444, + 5.6883, + 5.2071, + 5.6883, + 5.2071, + 5.803, + 4.8444, + 5.803 + ], + "spans": [ + { + "offset": 636, + "length": 5 + } + ] + }, + { + "content": "$30.00", + "polygon": [ + 5.9669, + 5.6777, + 6.4142, + 5.6777, + 6.4142, + 5.8215, + 5.9669, + 5.8215 + ], + "spans": [ + { + "offset": 642, + "length": 6 + } + ] + }, + { + "content": "10%", + "polygon": [ + 6.7168, + 5.6932, + 6.9826, + 5.6932, + 6.9826, + 5.8045, + 6.7168, + 5.8045 + ], + "spans": [ + { + "offset": 649, + "length": 3 + } + ] + }, + { + "content": "$60.00", + "polygon": [ + 7.4642, + 5.6777, + 7.9116, + 5.6777, + 7.9116, + 5.8215, + 7.4642, + 5.8215 + ], + "spans": [ + { + "offset": 653, + "length": 6 + } + ] + }, + { + "content": "3/5/2021", + "polygon": [ + 0.592, + 5.9787, + 1.2088, + 5.9787, + 1.2088, + 6.121, + 0.592, + 6.121 + ], + "spans": [ + { + "offset": 660, + "length": 8 + } + ] + }, + { + "content": "B456", + "polygon": [ + 1.6214, + 5.9915, + 1.9419, + 5.9915, + 1.9419, + 6.0997, + 1.6214, + 6.0997 + ], + "spans": [ + { + "offset": 669, + "length": 4 + } + ] + }, + { + "content": "Document Fee", + "polygon": [ + 2.345, + 5.993, + 3.3096, + 5.993, + 3.3096, + 6.0997, + 2.345, + 6.0997 + ], + "spans": [ + { + "offset": 674, + "length": 12 + } + ] + }, + { + "content": "3", + "polygon": [ + 4.5967, + 5.9915, + 4.6627, + 5.9915, + 4.6627, + 6.0997, + 4.5967, + 6.0997 + ], + "spans": [ + { + "offset": 687, + "length": 1 + } + ] + }, + { + "content": "$10.00", + "polygon": [ + 5.9669, + 5.9743, + 6.4142, + 5.9743, + 6.4142, + 6.1182, + 5.9669, + 6.1182 + ], + "spans": [ + { + "offset": 689, + "length": 6 + } + ] + }, + { + "content": "5%", + "polygon": [ + 6.7508, + 5.9898, + 6.9393, + 5.9898, + 6.9393, + 6.1012, + 6.7508, + 6.1012 + ], + "spans": [ + { + "offset": 696, + "length": 2 + } + ] + }, + { + "content": "$30.00", + "polygon": [ + 7.4642, + 5.9743, + 7.9116, + 5.9743, + 7.9116, + 6.1182, + 7.4642, + 6.1182 + ], + "spans": [ + { + "offset": 699, + "length": 6 + } + ] + }, + { + "content": "3/6/2021", + "polygon": [ + 0.592, + 6.2789, + 1.2088, + 6.2789, + 1.2088, + 6.4213, + 0.592, + 6.4213 + ], + "spans": [ + { + "offset": 706, + "length": 8 + } + ] + }, + { + "content": "C789", + "polygon": [ + 1.6152, + 6.2918, + 1.94, + 6.2918, + 1.94, + 6.3999, + 1.6152, + 6.3999 + ], + "spans": [ + { + "offset": 715, + "length": 4 + } + ] + }, + { + "content": "Printing Fee", + "polygon": [ + 2.345, + 6.2906, + 3.1351, + 6.2906, + 3.1351, + 6.4281, + 2.345, + 6.4281 + ], + "spans": [ + { + "offset": 720, + "length": 12 + } + ] + }, + { + "content": "10", + "polygon": [ + 4.5158, + 6.2918, + 4.6637, + 6.2918, + 4.6637, + 6.3999, + 4.5158, + 6.3999 + ], + "spans": [ + { + "offset": 733, + "length": 2 + } + ] + }, + { + "content": "pages", + "polygon": [ + 4.8444, + 6.3196, + 5.2199, + 6.3196, + 5.2199, + 6.4281, + 4.8444, + 6.4281 + ], + "spans": [ + { + "offset": 736, + "length": 5 + } + ] + }, + { + "content": "$1.00", + "polygon": [ + 6.0502, + 6.2746, + 6.4142, + 6.2746, + 6.4142, + 6.4184, + 6.0502, + 6.4184 + ], + "spans": [ + { + "offset": 742, + "length": 5 + } + ] + }, + { + "content": "20%", + "polygon": [ + 6.712, + 6.2901, + 6.9826, + 6.2901, + 6.9826, + 6.4014, + 6.712, + 6.4014 + ], + "spans": [ + { + "offset": 748, + "length": 3 + } + ] + }, + { + "content": "$10.00", + "polygon": [ + 7.4642, + 6.2746, + 7.9116, + 6.2746, + 7.9116, + 6.4184, + 7.4642, + 6.4184 + ], + "spans": [ + { + "offset": 752, + "length": 6 + } + ] + }, + { + "content": "SUBTOTAL", + "polygon": [ + 6.0282, + 6.9118, + 6.7309, + 6.9118, + 6.7309, + 7.0199, + 6.0282, + 7.0199 + ], + "spans": [ + { + "offset": 759, + "length": 8 + } + ] + }, + { + "content": "$100.00", + "polygon": [ + 7.3842, + 6.8679, + 7.9181, + 6.8679, + 7.9181, + 7.0118, + 7.3842, + 7.0118 + ], + "spans": [ + { + "offset": 768, + "length": 7 + } + ] + }, + { + "content": "SALES TAX", + "polygon": [ + 6.0382, + 7.2089, + 6.728, + 7.2089, + 6.728, + 7.317, + 6.0382, + 7.317 + ], + "spans": [ + { + "offset": 776, + "length": 9 + } + ] + }, + { + "content": "$10.00", + "polygon": [ + 7.4709, + 7.165, + 7.9182, + 7.165, + 7.9182, + 7.3089, + 7.4709, + 7.3089 + ], + "spans": [ + { + "offset": 786, + "length": 6 + } + ] + }, + { + "content": "TOTAL", + "polygon": [ + 6.2969, + 7.5089, + 6.7309, + 7.5089, + 6.7309, + 7.617, + 6.2969, + 7.617 + ], + "spans": [ + { + "offset": 793, + "length": 5 + } + ] + }, + { + "content": "$110.00", + "polygon": [ + 7.3842, + 7.465, + 7.9181, + 7.465, + 7.9181, + 7.6089, + 7.3842, + 7.6089 + ], + "spans": [ + { + "offset": 799, + "length": 7 + } + ] + }, + { + "content": "PREVIOUS UNPAID BALANCE", + "polygon": [ + 4.8126, + 7.8055, + 6.7249, + 7.8055, + 6.7249, + 7.9137, + 4.8126, + 7.9137 + ], + "spans": [ + { + "offset": 807, + "length": 23 + } + ] + }, + { + "content": "$500.00", + "polygon": [ + 7.3842, + 7.7617, + 7.9181, + 7.7617, + 7.9181, + 7.9055, + 7.3842, + 7.9055 + ], + "spans": [ + { + "offset": 831, + "length": 7 + } + ] + }, + { + "content": "AMOUNT DUE", + "polygon": [ + 5.7652, + 8.1022, + 6.725, + 8.1022, + 6.725, + 8.2104, + 5.7652, + 8.2104 + ], + "spans": [ + { + "offset": 839, + "length": 10 + } + ] + }, + { + "content": "$610.00", + "polygon": [ + 7.3842, + 8.0584, + 7.9181, + 8.0584, + 7.9181, + 8.2022, + 7.3842, + 8.2022 + ], + "spans": [ + { + "offset": 850, + "length": 7 + } + ] + }, + { + "content": "THANK YOU FOR YOUR BUSINESS!", + "polygon": [ + 3.129, + 8.539, + 5.356, + 8.539, + 5.356, + 8.6442, + 3.129, + 8.6442 + ], + "spans": [ + { + "offset": 858, + "length": 28 + } + ] + }, + { + "content": "REMIT TO:", + "polygon": [ + 0.5909, + 9.1607, + 1.2603, + 9.1607, + 1.2603, + 9.2608, + 0.5909, + 9.2608 + ], + "spans": [ + { + "offset": 887, + "length": 9 + } + ] + }, + { + "content": "Contoso Billing", + "polygon": [ + 0.5882, + 9.3631, + 1.5828, + 9.3631, + 1.5828, + 9.5059, + 0.5882, + 9.5059 + ], + "spans": [ + { + "offset": 897, + "length": 15 + } + ] + }, + { + "content": "123 Remit St", + "polygon": [ + 0.5945, + 9.5717, + 1.4337, + 9.5717, + 1.4337, + 9.681, + 0.5945, + 9.681 + ], + "spans": [ + { + "offset": 913, + "length": 12 + } + ] + }, + { + "content": "New York, NY, 10001", + "polygon": [ + 0.5943, + 9.773, + 1.9882, + 9.773, + 1.9882, + 9.9098, + 0.5943, + 9.9098 + ], + "spans": [ + { + "offset": 926, + "length": 19 + } + ] + } + ], + "spans": [ + { + "offset": 0, + "length": 958 + } + ] + } + ], + "tables": [ + { + "rowCount": 4, + "columnCount": 8, + "cells": [ + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "DATE", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.4932, + 5.329, + 1.3011, + 5.3213, + 1.3011, + 5.6056, + 0.5009, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 549, + "length": 4 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "ITEM CODE", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.3011, + 5.3213, + 2.2476, + 5.3213, + 2.2399, + 5.6056, + 1.3011, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 554, + "length": 9 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 2, + "rowSpan": 1, + "columnSpan": 1, + "content": "DESCRIPTION", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 2.2476, + 5.3213, + 4.3174, + 5.329, + 4.3097, + 5.6056, + 2.2399, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 564, + "length": 11 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 3, + "rowSpan": 1, + "columnSpan": 1, + "content": "QTY", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.3174, + 5.329, + 4.7483, + 5.329, + 4.7483, + 5.6056, + 4.3097, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 576, + "length": 3 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 4, + "rowSpan": 1, + "columnSpan": 1, + "content": "UM", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7483, + 5.329, + 5.5639, + 5.329, + 5.5639, + 5.6056, + 4.7483, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 580, + "length": 2 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 5, + "rowSpan": 1, + "columnSpan": 1, + "content": "PRICE", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.5639, + 5.329, + 6.495, + 5.329, + 6.495, + 5.6056, + 5.5639, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 583, + "length": 5 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 6, + "rowSpan": 1, + "columnSpan": 1, + "content": "TAX", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.495, + 5.329, + 7.1875, + 5.329, + 7.1952, + 5.6056, + 6.495, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 589, + "length": 3 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 7, + "rowSpan": 1, + "columnSpan": 1, + "content": "AMOUNT", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.1875, + 5.329, + 7.9954, + 5.329, + 7.9954, + 5.598, + 7.1952, + 5.6056 + ] + } + ], + "spans": [ + { + "offset": 593, + "length": 6 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "3/4/2021", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5009, + 5.6056, + 1.3011, + 5.6056, + 1.3011, + 5.8976, + 0.5009, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 600, + "length": 8 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "A123", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.3011, + 5.6056, + 2.2399, + 5.6056, + 2.2322, + 5.8976, + 1.3011, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 609, + "length": 4 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 2, + "rowSpan": 1, + "columnSpan": 1, + "content": "Consulting Services", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 2.2399, + 5.6056, + 4.3097, + 5.6056, + 4.3097, + 5.8976, + 2.2322, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 614, + "length": 19 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 3, + "rowSpan": 1, + "columnSpan": 1, + "content": "2 :unselected:", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.3097, + 5.6056, + 4.7483, + 5.6056, + 4.7483, + 5.8976, + 4.3097, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 634, + "length": 1 + }, + { + "offset": 946, + "length": 12 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 4, + "rowSpan": 1, + "columnSpan": 1, + "content": "hours", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7483, + 5.6056, + 5.5639, + 5.6056, + 5.5639, + 5.8976, + 4.7483, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 636, + "length": 5 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 5, + "rowSpan": 1, + "columnSpan": 1, + "content": "$30.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.5639, + 5.6056, + 6.495, + 5.6056, + 6.495, + 5.8976, + 5.5639, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 642, + "length": 6 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 6, + "rowSpan": 1, + "columnSpan": 1, + "content": "10%", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.495, + 5.6056, + 7.1952, + 5.6056, + 7.1952, + 5.8976, + 6.495, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 649, + "length": 3 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 7, + "rowSpan": 1, + "columnSpan": 1, + "content": "$60.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.1952, + 5.6056, + 7.9954, + 5.598, + 7.9954, + 5.9053, + 7.1952, + 5.8976 + ] + } + ], + "spans": [ + { + "offset": 653, + "length": 6 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "3/5/2021", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5009, + 5.8976, + 1.3011, + 5.8976, + 1.3011, + 6.1973, + 0.5086, + 6.1973 + ] + } + ], + "spans": [ + { + "offset": 660, + "length": 8 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "B456", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.3011, + 5.8976, + 2.2322, + 5.8976, + 2.2245, + 6.1973, + 1.3011, + 6.1973 + ] + } + ], + "spans": [ + { + "offset": 669, + "length": 4 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 2, + "rowSpan": 1, + "columnSpan": 1, + "content": "Document Fee", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 2.2322, + 5.8976, + 4.3097, + 5.8976, + 4.3097, + 6.1973, + 2.2245, + 6.1973 + ] + } + ], + "spans": [ + { + "offset": 674, + "length": 12 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 3, + "rowSpan": 1, + "columnSpan": 1, + "content": "3", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.3097, + 5.8976, + 4.7483, + 5.8976, + 4.7483, + 6.1973, + 4.3097, + 6.1973 + ] + } + ], + "spans": [ + { + "offset": 687, + "length": 1 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 4, + "rowSpan": 1, + "columnSpan": 1, + "content": "", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7483, + 5.8976, + 5.5639, + 5.8976, + 5.5639, + 6.1973, + 4.7483, + 6.1973 + ] + } + ], + "spans": [] + }, + { + "rowIndex": 2, + "columnIndex": 5, + "rowSpan": 1, + "columnSpan": 1, + "content": "$10.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.5639, + 5.8976, + 6.495, + 5.8976, + 6.495, + 6.1973, + 5.5639, + 6.1973 + ] + } + ], + "spans": [ + { + "offset": 689, + "length": 6 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 6, + "rowSpan": 1, + "columnSpan": 1, + "content": "5%", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.495, + 5.8976, + 7.1952, + 5.8976, + 7.1952, + 6.1973, + 6.495, + 6.1973 + ] + } + ], + "spans": [ + { + "offset": 696, + "length": 2 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 7, + "rowSpan": 1, + "columnSpan": 1, + "content": "$30.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.1952, + 5.8976, + 7.9954, + 5.9053, + 7.9954, + 6.1896, + 7.1952, + 6.1973 + ] + } + ], + "spans": [ + { + "offset": 699, + "length": 6 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "3/6/2021", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5086, + 6.1973, + 1.3011, + 6.1973, + 1.3011, + 6.4969, + 0.5086, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 706, + "length": 8 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "C789", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.3011, + 6.1973, + 2.2245, + 6.1973, + 2.2245, + 6.4969, + 1.3011, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 715, + "length": 4 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 2, + "rowSpan": 1, + "columnSpan": 1, + "content": "Printing Fee", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 2.2245, + 6.1973, + 4.3097, + 6.1973, + 4.3097, + 6.4969, + 2.2245, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 720, + "length": 12 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 3, + "rowSpan": 1, + "columnSpan": 1, + "content": "10", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.3097, + 6.1973, + 4.7483, + 6.1973, + 4.7483, + 6.4969, + 4.3097, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 733, + "length": 2 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 4, + "rowSpan": 1, + "columnSpan": 1, + "content": "pages", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7483, + 6.1973, + 5.5639, + 6.1973, + 5.5639, + 6.4969, + 4.7483, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 736, + "length": 5 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 5, + "rowSpan": 1, + "columnSpan": 1, + "content": "$1.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.5639, + 6.1973, + 6.495, + 6.1973, + 6.495, + 6.4969, + 5.5639, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 742, + "length": 5 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 6, + "rowSpan": 1, + "columnSpan": 1, + "content": "20%", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.495, + 6.1973, + 7.1952, + 6.1973, + 7.1952, + 6.4969, + 6.495, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 748, + "length": 3 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 7, + "rowSpan": 1, + "columnSpan": 1, + "content": "$10.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.1952, + 6.1973, + 7.9954, + 6.1896, + 7.9954, + 6.5046, + 7.1952, + 6.4969 + ] + } + ], + "spans": [ + { + "offset": 752, + "length": 6 + } + ] + } + ], + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.4901, + 5.3293, + 7.9946, + 5.3289, + 7.9954, + 6.5019, + 0.4906, + 6.502 + ] + } + ], + "spans": [ + { + "offset": 549, + "length": 209 + }, + { + "offset": 946, + "length": 12 + } + ] + }, + { + "rowCount": 2, + "columnCount": 6, + "cells": [ + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "SALESPERSON", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.4977, + 4.565, + 1.8042, + 4.565, + 1.8119, + 4.8388, + 0.5054, + 4.8388 + ] + } + ], + "spans": [ + { + "offset": 472, + "length": 11 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "P.O. NUMBER", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.8042, + 4.565, + 3.3105, + 4.565, + 3.3105, + 4.8388, + 1.8119, + 4.8388 + ] + } + ], + "spans": [ + { + "offset": 484, + "length": 11 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 2, + "rowSpan": 1, + "columnSpan": 1, + "content": "REQUISITIONER", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 3.3105, + 4.565, + 4.6939, + 4.565, + 4.6862, + 4.8388, + 3.3105, + 4.8388 + ] + } + ], + "spans": [ + { + "offset": 496, + "length": 13 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 3, + "rowSpan": 1, + "columnSpan": 1, + "content": "SHIPPED VIA", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.6939, + 4.565, + 5.7468, + 4.565, + 5.7468, + 4.8388, + 4.6862, + 4.8388 + ] + } + ], + "spans": [ + { + "offset": 510, + "length": 11 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 4, + "rowSpan": 1, + "columnSpan": 1, + "content": "F.O.B. POINT", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.7468, + 4.565, + 6.815, + 4.565, + 6.815, + 4.8388, + 5.7468, + 4.8388 + ] + } + ], + "spans": [ + { + "offset": 522, + "length": 12 + } + ] + }, + { + "kind": "columnHeader", + "rowIndex": 0, + "columnIndex": 5, + "rowSpan": 1, + "columnSpan": 1, + "content": "TERMS", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.815, + 4.565, + 7.9985, + 4.565, + 7.9985, + 4.8388, + 6.815, + 4.8388 + ] + } + ], + "spans": [ + { + "offset": 535, + "length": 5 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5054, + 4.8388, + 1.8119, + 4.8388, + 1.8119, + 5.1058, + 0.5131, + 5.1058 + ] + } + ], + "spans": [] + }, + { + "rowIndex": 1, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "PO-3333", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.8119, + 4.8388, + 3.3105, + 4.8388, + 3.3105, + 5.1058, + 1.8119, + 5.1058 + ] + } + ], + "spans": [ + { + "offset": 541, + "length": 7 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 2, + "rowSpan": 1, + "columnSpan": 1, + "content": "", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 3.3105, + 4.8388, + 4.6862, + 4.8388, + 4.6862, + 5.1058, + 3.3105, + 5.1058 + ] + } + ], + "spans": [] + }, + { + "rowIndex": 1, + "columnIndex": 3, + "rowSpan": 1, + "columnSpan": 1, + "content": "", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.6862, + 4.8388, + 5.7468, + 4.8388, + 5.7468, + 5.1058, + 4.6862, + 5.1058 + ] + } + ], + "spans": [] + }, + { + "rowIndex": 1, + "columnIndex": 4, + "rowSpan": 1, + "columnSpan": 1, + "content": "", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.7468, + 4.8388, + 6.815, + 4.8388, + 6.815, + 5.1058, + 5.7468, + 5.1058 + ] + } + ], + "spans": [] + }, + { + "rowIndex": 1, + "columnIndex": 5, + "rowSpan": 1, + "columnSpan": 1, + "content": "", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.815, + 4.8388, + 7.9985, + 4.8388, + 7.9985, + 5.1125, + 6.815, + 5.1058 + ] + } + ], + "spans": [] + } + ], + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.4971, + 4.565, + 7.9889, + 4.5653, + 7.989, + 5.1146, + 0.4963, + 5.1141 + ] + } + ], + "spans": [ + { + "offset": 472, + "length": 76 + } + ] + }, + { + "rowCount": 5, + "columnCount": 2, + "cells": [ + { + "rowIndex": 0, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "SUBTOTAL", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7474, + 6.7934, + 6.8058, + 6.7934, + 6.8105, + 7.0886, + 4.7474, + 7.0886 + ] + } + ], + "spans": [ + { + "offset": 759, + "length": 8 + } + ] + }, + { + "rowIndex": 0, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "$100.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.8058, + 6.7934, + 7.9981, + 6.7934, + 7.9981, + 7.0934, + 6.8105, + 7.0886 + ] + } + ], + "spans": [ + { + "offset": 768, + "length": 7 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "SALES TAX", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7474, + 7.0886, + 6.8105, + 7.0886, + 6.8105, + 7.3743, + 4.7427, + 7.3743 + ] + } + ], + "spans": [ + { + "offset": 776, + "length": 9 + } + ] + }, + { + "rowIndex": 1, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "$10.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.8105, + 7.0886, + 7.9981, + 7.0934, + 7.9981, + 7.3934, + 6.8105, + 7.3743 + ] + } + ], + "spans": [ + { + "offset": 786, + "length": 6 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "TOTAL", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7427, + 7.3743, + 6.8105, + 7.3743, + 6.8105, + 7.6839, + 4.7427, + 7.6839 + ] + } + ], + "spans": [ + { + "offset": 793, + "length": 5 + } + ] + }, + { + "rowIndex": 2, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "$110.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.8105, + 7.3743, + 7.9981, + 7.3934, + 7.9981, + 7.6886, + 6.8105, + 7.6839 + ] + } + ], + "spans": [ + { + "offset": 799, + "length": 7 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "PREVIOUS UNPAID BALANCE", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7427, + 7.6839, + 6.8105, + 7.6839, + 6.8105, + 7.9743, + 4.7427, + 7.9743 + ] + } + ], + "spans": [ + { + "offset": 807, + "length": 23 + } + ] + }, + { + "rowIndex": 3, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "$500.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.8105, + 7.6839, + 7.9981, + 7.6886, + 7.9981, + 7.9839, + 6.8105, + 7.9743 + ] + } + ], + "spans": [ + { + "offset": 831, + "length": 7 + } + ] + }, + { + "rowIndex": 4, + "columnIndex": 0, + "rowSpan": 1, + "columnSpan": 1, + "content": "AMOUNT DUE", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7427, + 7.9743, + 6.8105, + 7.9743, + 6.8105, + 8.2839, + 4.7381, + 8.2839 + ] + } + ], + "spans": [ + { + "offset": 839, + "length": 10 + } + ] + }, + { + "rowIndex": 4, + "columnIndex": 1, + "rowSpan": 1, + "columnSpan": 1, + "content": "$610.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.8105, + 7.9743, + 7.9981, + 7.9839, + 7.9981, + 8.2839, + 6.8105, + 8.2839 + ] + } + ], + "spans": [ + { + "offset": 850, + "length": 7 + } + ] + } + ], + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.7456, + 6.7793, + 8.0143, + 6.7788, + 8.0137, + 8.2981, + 4.7446, + 8.2981 + ] + } + ], + "spans": [ + { + "offset": 759, + "length": 98 + } + ] + } + ], + "documents": [ + { + "docType": "prebuilt:invoice", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0, + 0, + 8.5, + 0, + 8.5, + 11, + 0, + 11 + ] + } + ], + "fields": { + "AmountDue": { + "type": "number", + "valueNumber": 610, + "content": "$610.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.3842, + 8.0584, + 7.9181, + 8.0584, + 7.9181, + 8.2022, + 7.3842, + 8.2022 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 850, + "length": 7 + } + ] + }, + "BillingAddress": { + "type": "string", + "valueString": "123 Bill St, Redmond WA, 98052", + "content": "123 Bill St, Redmond WA, 98052", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5943, + 3.9681, + 2.0083, + 3.9681, + 2.0083, + 4.3082, + 0.5943, + 4.3082 + ] + } + ], + "confidence": 0.947, + "spans": [ + { + "offset": 376, + "length": 12 + }, + { + "offset": 418, + "length": 17 + } + ] + }, + "BillingAddressRecipient": { + "type": "string", + "valueString": "Microsoft Finance", + "content": "Microsoft Finance", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5943, + 3.7641, + 1.7878, + 3.7641, + 1.7878, + 3.8794, + 0.5943, + 3.8794 + ] + } + ], + "confidence": 0.957, + "spans": [ + { + "offset": 320, + "length": 17 + } + ] + }, + "CustomerAddress": { + "type": "string", + "valueString": "123 Other St, Redmond WA, 98052", + "content": "123 Other St, Redmond WA, 98052", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5943, + 2.8476, + 2.0083, + 2.8476, + 2.0083, + 3.1878, + 0.5943, + 3.1878 + ] + } + ], + "confidence": 0.947, + "spans": [ + { + "offset": 253, + "length": 31 + } + ] + }, + "CustomerAddressRecipient": { + "type": "string", + "valueString": "Microsoft Corp", + "content": "Microsoft Corp", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5943, + 2.6436, + 1.586, + 2.6436, + 1.586, + 2.7871, + 0.5943, + 2.7871 + ] + } + ], + "confidence": 0.956, + "spans": [ + { + "offset": 238, + "length": 14 + } + ] + }, + "CustomerId": { + "type": "string", + "valueString": "CID-12345", + "content": "CID-12345", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.3369, + 2.4491, + 7.9951, + 2.4491, + 7.9951, + 2.5486, + 7.3369, + 2.5486 + ] + } + ], + "confidence": 0.964, + "spans": [ + { + "offset": 228, + "length": 9 + } + ] + }, + "CustomerName": { + "type": "string", + "valueString": "MICROSOFT CORPORATION", + "content": "MICROSOFT CORPORATION", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.2419, + 2.0391, + 7.9825, + 2.0391, + 7.9825, + 2.1386, + 6.2419, + 2.1386 + ] + } + ], + "confidence": 0.949, + "spans": [ + { + "offset": 153, + "length": 21 + } + ] + }, + "DueDate": { + "type": "date", + "valueDate": "2019-12-15", + "content": "12/15/2019", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.2494, + 1.8206, + 7.993, + 1.8206, + 7.993, + 1.9515, + 7.2494, + 1.9515 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 127, + "length": 10 + } + ] + }, + "InvoiceDate": { + "type": "date", + "valueDate": "2019-11-15", + "content": "11/15/2019", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.2528, + 1.6139, + 7.993, + 1.6139, + 7.993, + 1.7449, + 7.2528, + 1.7449 + ] + } + ], + "confidence": 0.972, + "spans": [ + { + "offset": 86, + "length": 10 + } + ] + }, + "InvoiceId": { + "type": "string", + "valueString": "INV-100", + "content": "INV-100", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.4959, + 1.422, + 7.9988, + 1.422, + 7.9988, + 1.5215, + 7.4959, + 1.5215 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 51, + "length": 7 + } + ] + }, + "InvoiceTotal": { + "type": "number", + "valueNumber": 110, + "content": "$110.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.3842, + 7.465, + 7.9181, + 7.465, + 7.9181, + 7.6089, + 7.3842, + 7.6089 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 799, + "length": 7 + } + ] + }, + "Items": { + "type": "array", + "valueArray": [ + { + "type": "object", + "valueObject": { + "Amount": { + "type": "number", + "valueNumber": 60, + "content": "$60.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.4642, + 5.6777, + 7.9116, + 5.6777, + 7.9116, + 5.8215, + 7.4642, + 5.8215 + ] + } + ], + "confidence": 0.902, + "spans": [ + { + "offset": 653, + "length": 6 + } + ] + }, + "Date": { + "type": "date", + "valueDate": "2021-03-04", + "content": "3/4/2021", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.592, + 5.682, + 1.2092, + 5.682, + 1.2092, + 5.8243, + 0.592, + 5.8243 + ] + } + ], + "confidence": 0.938, + "spans": [ + { + "offset": 600, + "length": 8 + } + ] + }, + "Description": { + "type": "string", + "valueString": "Consulting Services", + "content": "Consulting Services", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 2.3388, + 5.6883, + 3.6278, + 5.6883, + 3.6278, + 5.8312, + 2.3388, + 5.8312 + ] + } + ], + "confidence": 0.9, + "spans": [ + { + "offset": 614, + "length": 19 + } + ] + }, + "ProductCode": { + "type": "string", + "valueString": "A123", + "content": "A123", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.6069, + 5.6948, + 1.9417, + 5.6948, + 1.9417, + 5.803, + 1.6069, + 5.803 + ] + } + ], + "confidence": 0.877, + "spans": [ + { + "offset": 609, + "length": 4 + } + ] + }, + "Quantity": { + "type": "number", + "valueNumber": 2, + "content": "2", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.5977, + 5.6948, + 4.6635, + 5.6948, + 4.6635, + 5.8017, + 4.5977, + 5.8017 + ] + } + ], + "confidence": 0.899, + "spans": [ + { + "offset": 634, + "length": 1 + } + ] + }, + "Tax": { + "type": "number", + "content": "10%", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.7168, + 5.6932, + 6.9826, + 5.6932, + 6.9826, + 5.8045, + 6.7168, + 5.8045 + ] + } + ], + "confidence": 0.78, + "spans": [ + { + "offset": 649, + "length": 3 + } + ] + }, + "Unit": { + "type": "string", + "valueString": "hours", + "content": "hours", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.8444, + 5.6883, + 5.2071, + 5.6883, + 5.2071, + 5.803, + 4.8444, + 5.803 + ] + } + ], + "confidence": 0.899, + "spans": [ + { + "offset": 636, + "length": 5 + } + ] + }, + "UnitPrice": { + "type": "number", + "valueNumber": 30, + "content": "$30.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.9669, + 5.6777, + 6.4142, + 5.6777, + 6.4142, + 5.8215, + 5.9669, + 5.8215 + ] + } + ], + "confidence": 0.828, + "spans": [ + { + "offset": 642, + "length": 6 + } + ] + } + }, + "content": "3/4/2021 A123 Consulting Services 2 hours $30.00 10% $60.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.592, + 5.6777, + 7.9116, + 5.6777, + 7.9116, + 5.8312, + 0.592, + 5.8312 + ] + } + ], + "confidence": 0.955, + "spans": [ + { + "offset": 600, + "length": 59 + } + ] + }, + { + "type": "object", + "valueObject": { + "Amount": { + "type": "number", + "valueNumber": 30, + "content": "$30.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.4642, + 5.9743, + 7.9116, + 5.9743, + 7.9116, + 6.1182, + 7.4642, + 6.1182 + ] + } + ], + "confidence": 0.916, + "spans": [ + { + "offset": 699, + "length": 6 + } + ] + }, + "Date": { + "type": "date", + "valueDate": "2021-03-05", + "content": "3/5/2021", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.592, + 5.9787, + 1.2088, + 5.9787, + 1.2088, + 6.121, + 0.592, + 6.121 + ] + } + ], + "confidence": 0.902, + "spans": [ + { + "offset": 660, + "length": 8 + } + ] + }, + "Description": { + "type": "string", + "valueString": "Document Fee", + "content": "Document Fee", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 2.345, + 5.993, + 3.3096, + 5.993, + 3.3096, + 6.0997, + 2.345, + 6.0997 + ] + } + ], + "confidence": 0.901, + "spans": [ + { + "offset": 674, + "length": 12 + } + ] + }, + "ProductCode": { + "type": "string", + "valueString": "B456", + "content": "B456", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.6214, + 5.9915, + 1.9419, + 5.9915, + 1.9419, + 6.0997, + 1.6214, + 6.0997 + ] + } + ], + "confidence": 0.886, + "spans": [ + { + "offset": 669, + "length": 4 + } + ] + }, + "Quantity": { + "type": "number", + "valueNumber": 3, + "content": "3", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.5967, + 5.9915, + 4.6627, + 5.9915, + 4.6627, + 6.0997, + 4.5967, + 6.0997 + ] + } + ], + "confidence": 0.898, + "spans": [ + { + "offset": 687, + "length": 1 + } + ] + }, + "Tax": { + "type": "number", + "content": "5%", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.7508, + 5.9898, + 6.9393, + 5.9898, + 6.9393, + 6.1012, + 6.7508, + 6.1012 + ] + } + ], + "confidence": 0.772, + "spans": [ + { + "offset": 696, + "length": 2 + } + ] + }, + "UnitPrice": { + "type": "number", + "valueNumber": 10, + "content": "$10.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 5.9669, + 5.9743, + 6.4142, + 5.9743, + 6.4142, + 6.1182, + 5.9669, + 6.1182 + ] + } + ], + "confidence": 0.831, + "spans": [ + { + "offset": 689, + "length": 6 + } + ] + } + }, + "content": "3/5/2021 B456 Document Fee 3 $10.00 5% $30.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.592, + 5.9743, + 7.9116, + 5.9743, + 7.9116, + 6.121, + 0.592, + 6.121 + ] + } + ], + "confidence": 0.941, + "spans": [ + { + "offset": 660, + "length": 45 + } + ] + }, + { + "type": "object", + "valueObject": { + "Amount": { + "type": "number", + "valueNumber": 10, + "content": "$10.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.4642, + 6.2746, + 7.9116, + 6.2746, + 7.9116, + 6.4184, + 7.4642, + 6.4184 + ] + } + ], + "confidence": 0.959, + "spans": [ + { + "offset": 752, + "length": 6 + } + ] + }, + "Date": { + "type": "date", + "valueDate": "2021-03-06", + "content": "3/6/2021", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.592, + 6.2789, + 1.2088, + 6.2789, + 1.2088, + 6.4213, + 0.592, + 6.4213 + ] + } + ], + "confidence": 0.903, + "spans": [ + { + "offset": 706, + "length": 8 + } + ] + }, + "Description": { + "type": "string", + "valueString": "Printing Fee", + "content": "Printing Fee", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 2.345, + 6.2906, + 3.1351, + 6.2906, + 3.1351, + 6.4281, + 2.345, + 6.4281 + ] + } + ], + "confidence": 0.899, + "spans": [ + { + "offset": 720, + "length": 12 + } + ] + }, + "ProductCode": { + "type": "string", + "valueString": "C789", + "content": "C789", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.6152, + 6.2918, + 1.94, + 6.2918, + 1.94, + 6.3999, + 1.6152, + 6.3999 + ] + } + ], + "confidence": 0.898, + "spans": [ + { + "offset": 715, + "length": 4 + } + ] + }, + "Quantity": { + "type": "number", + "valueNumber": 10, + "content": "10", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.5158, + 6.2918, + 4.6637, + 6.2918, + 4.6637, + 6.3999, + 4.5158, + 6.3999 + ] + } + ], + "confidence": 0.903, + "spans": [ + { + "offset": 733, + "length": 2 + } + ] + }, + "Tax": { + "type": "number", + "content": "20%", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.712, + 6.2901, + 6.9826, + 6.2901, + 6.9826, + 6.4014, + 6.712, + 6.4014 + ] + } + ], + "confidence": 0.791, + "spans": [ + { + "offset": 748, + "length": 3 + } + ] + }, + "Unit": { + "type": "string", + "valueString": "pages", + "content": "pages", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 4.8444, + 6.3196, + 5.2199, + 6.3196, + 5.2199, + 6.4281, + 4.8444, + 6.4281 + ] + } + ], + "confidence": 0.899, + "spans": [ + { + "offset": 736, + "length": 5 + } + ] + }, + "UnitPrice": { + "type": "number", + "valueNumber": 1, + "content": "$1.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.0502, + 6.2746, + 6.4142, + 6.2746, + 6.4142, + 6.4184, + 6.0502, + 6.4184 + ] + } + ], + "confidence": 0.829, + "spans": [ + { + "offset": 742, + "length": 5 + } + ] + } + }, + "content": "3/6/2021 C789 Printing Fee 10 pages $1.00 20% $10.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.592, + 6.2746, + 7.9116, + 6.2746, + 7.9116, + 6.4281, + 0.592, + 6.4281 + ] + } + ], + "confidence": 0.956, + "spans": [ + { + "offset": 706, + "length": 52 + } + ] + } + ] + }, + "Locale": { + "type": "string", + "valueString": "en-US", + "confidence": 1 + }, + "PreviousUnpaidBalance": { + "type": "number", + "valueNumber": 500, + "content": "$500.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.3842, + 7.7617, + 7.9181, + 7.7617, + 7.9181, + 7.9055, + 7.3842, + 7.9055 + ] + } + ], + "confidence": 0.962, + "spans": [ + { + "offset": 831, + "length": 7 + } + ] + }, + "PurchaseOrder": { + "type": "string", + "valueString": "PO-3333", + "content": "PO-3333", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 1.9114, + 4.9282, + 2.4718, + 4.9282, + 2.4718, + 5.0363, + 1.9114, + 5.0363 + ] + } + ], + "confidence": 0.967, + "spans": [ + { + "offset": 541, + "length": 7 + } + ] + }, + "RemittanceAddress": { + "type": "string", + "valueString": "123 Remit St New York, NY, 10001", + "content": "123 Remit St New York, NY, 10001", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5943, + 9.5717, + 1.9882, + 9.5717, + 1.9882, + 9.9098, + 0.5943, + 9.9098 + ] + } + ], + "confidence": 0.946, + "spans": [ + { + "offset": 913, + "length": 32 + } + ] + }, + "RemittanceAddressRecipient": { + "type": "string", + "valueString": "Contoso Billing", + "content": "Contoso Billing", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5882, + 9.3631, + 1.5828, + 9.3631, + 1.5828, + 9.5059, + 0.5882, + 9.5059 + ] + } + ], + "confidence": 0.956, + "spans": [ + { + "offset": 897, + "length": 15 + } + ] + }, + "ServiceAddress": { + "type": "string", + "valueString": "123 Service St, Redmond WA, 98052", + "content": "123 Service St, Redmond WA, 98052", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.2197, + 3.9734, + 7.6337, + 3.9734, + 7.6337, + 4.3082, + 6.2197, + 4.3082 + ] + } + ], + "confidence": 0.946, + "spans": [ + { + "offset": 402, + "length": 15 + }, + { + "offset": 454, + "length": 17 + } + ] + }, + "ServiceAddressRecipient": { + "type": "string", + "valueString": "Microsoft Services", + "content": "Microsoft Services", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.2197, + 3.7641, + 7.4427, + 3.7641, + 7.4427, + 3.8794, + 6.2197, + 3.8794 + ] + } + ], + "confidence": 0.951, + "spans": [ + { + "offset": 357, + "length": 18 + } + ] + }, + "ServiceEndDate": { + "type": "date", + "valueDate": "2019-11-14", + "content": "11/14/2019", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.2528, + 2.2306, + 7.9952, + 2.2306, + 7.9952, + 2.3615, + 7.2528, + 2.3615 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 204, + "length": 10 + } + ] + }, + "ServiceStartDate": { + "type": "date", + "valueDate": "2019-10-14", + "content": "10/14/2019", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 6.3357, + 2.2306, + 7.0749, + 2.2306, + 7.0749, + 2.3615, + 6.3357, + 2.3615 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 191, + "length": 10 + } + ] + }, + "ShippingAddress": { + "type": "string", + "valueString": "123 Ship St, Redmond WA, 98052", + "content": "123 Ship St, Redmond WA, 98052", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 3.3454, + 3.9681, + 4.7594, + 3.9681, + 4.7594, + 4.3082, + 3.3454, + 4.3082 + ] + } + ], + "confidence": 0.946, + "spans": [ + { + "offset": 389, + "length": 12 + }, + { + "offset": 436, + "length": 17 + } + ] + }, + "ShippingAddressRecipient": { + "type": "string", + "valueString": "Microsoft Delivery", + "content": "Microsoft Delivery", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 3.3454, + 3.7641, + 4.5762, + 3.7641, + 4.5762, + 3.9076, + 3.3454, + 3.9076 + ] + } + ], + "confidence": 0.955, + "spans": [ + { + "offset": 338, + "length": 18 + } + ] + }, + "SubTotal": { + "type": "number", + "valueNumber": 100, + "content": "$100.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.3842, + 6.8679, + 7.9181, + 6.8679, + 7.9181, + 7.0118, + 7.3842, + 7.0118 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 768, + "length": 7 + } + ] + }, + "TotalTax": { + "type": "number", + "valueNumber": 10, + "content": "$10.00", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 7.4709, + 7.165, + 7.9182, + 7.165, + 7.9182, + 7.3089, + 7.4709, + 7.3089 + ] + } + ], + "confidence": 0.973, + "spans": [ + { + "offset": 786, + "length": 6 + } + ] + }, + "VendorAddress": { + "type": "string", + "valueString": "123 456th St New York, NY, 10001", + "content": "123 456th St New York, NY, 10001", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5943, + 1.6092, + 1.9894, + 1.6092, + 1.9894, + 1.9675, + 0.5943, + 1.9675 + ] + } + ], + "confidence": 0.946, + "spans": [ + { + "offset": 59, + "length": 12 + }, + { + "offset": 97, + "length": 19 + } + ] + }, + "VendorAddressRecipient": { + "type": "string", + "valueString": "Contoso Headquarters", + "content": "Contoso Headquarters", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5882, + 1.4239, + 2.0978, + 1.4239, + 2.0978, + 1.5664, + 0.5882, + 1.5664 + ] + } + ], + "confidence": 0.956, + "spans": [ + { + "offset": 21, + "length": 20 + } + ] + }, + "VendorName": { + "type": "string", + "valueString": "CONTOSO LTD.", + "content": "CONTOSO LTD.", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0.5911, + 0.6857, + 2.3181, + 0.6857, + 2.3181, + 0.8664, + 0.5911, + 0.8664 + ] + } + ], + "confidence": 0.956, + "spans": [ + { + "offset": 0, + "length": 12 + } + ] + } + }, + "confidence": 1, + "spans": [ + { + "offset": 0, + "length": 958 + } + ] + } + ] + } + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetClassifyDocumentResult.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetClassifyDocumentResult.json new file mode 100644 index 0000000000000..759676c51adbd --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetClassifyDocumentResult.json @@ -0,0 +1,104 @@ +{ + "operationId": "DocumentClassifiers_GetClassifyResult", + "title": "Get Classify Document Result", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "classifierId": "myClassifier", + "resultId": "3b31320d-8bab-4f88-b19c-2322a7f11034" + }, + "responses": { + "200": { + "body": { + "status": "succeeded", + "createdDateTime": "2021-09-24T13:00:46Z", + "lastUpdatedDateTime": "2021-09-24T13:00:49Z", + "analyzeResult": { + "apiVersion": "2024-02-29-preview", + "modelId": "myClassifier", + "stringIndexType": "textElements", + "contentFormat": "text", + "content": "", + "pages": [ + { + "pageNumber": 1, + "width": 8.5, + "height": 11, + "unit": "inch", + "spans": [] + }, + { + "pageNumber": 2, + "width": 8.5, + "height": 11, + "unit": "inch", + "spans": [] + }, + { + "pageNumber": 3, + "width": 8.5, + "height": 11, + "unit": "inch", + "spans": [] + } + ], + "documents": [ + { + "docType": "formA", + "boundingRegions": [ + { + "pageNumber": 1, + "polygon": [ + 0, + 0, + 8.5, + 0, + 8.5, + 11, + 0, + 11 + ] + }, + { + "pageNumber": 2, + "polygon": [ + 0, + 0, + 8.5, + 0, + 8.5, + 11, + 0, + 11 + ] + } + ], + "confidence": 0.97, + "spans": [] + }, + { + "docType": "formB", + "boundingRegions": [ + { + "pageNumber": 3, + "polygon": [ + 0, + 0, + 8.5, + 0, + 8.5, + 11, + 0, + 11 + ] + } + ], + "confidence": 0.97, + "spans": [] + } + ] + } + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentClassifier.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentClassifier.json new file mode 100644 index 0000000000000..19e3f8687ebca --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentClassifier.json @@ -0,0 +1,34 @@ +{ + "operationId": "DocumentClassifiers_GetClassifier", + "title": "Get Document Classifier", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "classifierId": "myClassifier" + }, + "responses": { + "200": { + "body": { + "classifierId": "myClassifier", + "description": "Classifier description", + "createdDateTime": "2022-07-30T00:00:00Z", + "expirationDateTime": "2023-01-01T00:00:00Z", + "apiVersion": "2024-02-29-preview", + "docTypes": { + "formA": { + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "prefix": "formADocs/" + } + }, + "formB": { + "azureBlobFileListSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "fileList": "formB.jsonl" + } + } + } + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentClassifiers.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentClassifiers.json new file mode 100644 index 0000000000000..e566abce89e6e --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentClassifiers.json @@ -0,0 +1,59 @@ +{ + "operationId": "DocumentClassifiers_ListClassifiers", + "title": "Get Document Classifiers", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "classifierId": "classifier1", + "description": "Classifier1 description", + "createdDateTime": "2022-07-30T00:00:00Z", + "expirationDateTime": "2023-01-01T00:00:00Z", + "apiVersion": "2024-02-29-preview", + "docTypes": { + "formA": { + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "prefix": "formADocs/" + } + }, + "formB": { + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "prefix": "formBDocs/" + } + } + } + }, + { + "classifierId": "classifier2", + "description": "Classifier2 description", + "createdDateTime": "2022-07-30T00:00:00Z", + "expirationDateTime": "2023-01-01T00:00:00Z", + "apiVersion": "2024-02-29-preview", + "docTypes": { + "formB": { + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "prefix": "formBDocs/" + } + }, + "formC": { + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "prefix": "formCDocs/" + } + } + } + } + ], + "nextLink": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentClassifiers?nextLink=nextLinkData" + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentModel_Custom.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentModel_Custom.json new file mode 100644 index 0000000000000..cedd4aee365c6 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentModel_Custom.json @@ -0,0 +1,44 @@ +{ + "operationId": "DocumentModels_GetModel", + "title": "Get Custom Document Model", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "myCustomModel" + }, + "responses": { + "200": { + "body": { + "modelId": "myCustomModel", + "description": "Custom model description", + "createdDateTime": "2021-09-24T12:54:35Z", + "expirationDateTime": "2023-01-01T00:00:00Z", + "apiVersion": "2024-02-29-preview", + "docTypes": { + "myForm": { + "fieldSchema": { + "Name": { + "type": "string" + }, + "Date": { + "type": "date" + }, + "Amount": { + "type": "number" + } + }, + "buildMode": "template", + "fieldConfidence": { + "Name": 0.9, + "Date": 0.95, + "Amount": 0.93 + } + } + }, + "tags": { + "createdBy": "myUserId" + } + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentModel_Prebuilt.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentModel_Prebuilt.json new file mode 100644 index 0000000000000..4ce655545bdfb --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentModel_Prebuilt.json @@ -0,0 +1,136 @@ +{ + "operationId": "DocumentModels_GetModel", + "title": "Get Prebuilt Document Model", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "modelId": "prebuilt-invoice" + }, + "responses": { + "200": { + "body": { + "modelId": "prebuilt-invoice", + "description": "Prebuilt model to extract key information from English invoices, including customer, vendor, invoice ID, due date, total, and more.", + "createdDateTime": "2021-07-30T00:00:00Z", + "apiVersion": "2024-02-29-preview", + "docTypes": { + "prebuilt:invoice": { + "fieldSchema": { + "CustomerName": { + "type": "string" + }, + "CustomerId": { + "type": "string" + }, + "PurchaseOrder": { + "type": "string" + }, + "InvoiceId": { + "type": "string" + }, + "InvoiceDate": { + "type": "date" + }, + "DueDate": { + "type": "date" + }, + "VendorName": { + "type": "string" + }, + "VendorAddress": { + "type": "string" + }, + "VendorAddressRecipient": { + "type": "string" + }, + "CustomerAddress": { + "type": "string" + }, + "CustomerAddressRecipient": { + "type": "string" + }, + "BillingAddress": { + "type": "string" + }, + "BillingAddressRecipient": { + "type": "string" + }, + "ShippingAddress": { + "type": "string" + }, + "ShippingAddressRecipient": { + "type": "string" + }, + "SubTotal": { + "type": "number" + }, + "TotalTax": { + "type": "number" + }, + "InvoiceTotal": { + "type": "number" + }, + "AmountDue": { + "type": "number" + }, + "PreviousUnpaidBalance": { + "type": "number" + }, + "RemittanceAddress": { + "type": "string" + }, + "RemittanceAddressRecipient": { + "type": "string" + }, + "ServiceAddress": { + "type": "string" + }, + "ServiceAddressRecipient": { + "type": "string" + }, + "ServiceStartDate": { + "type": "date" + }, + "ServiceEndDate": { + "type": "date" + }, + "Items": { + "type": "array", + "items": { + "type": "object", + "properties": { + "Amount": { + "type": "number" + }, + "Date": { + "type": "date" + }, + "Description": { + "type": "string" + }, + "Quantity": { + "type": "number" + }, + "ProductCode": { + "type": "string" + }, + "Tax": { + "type": "number" + }, + "Unit": { + "type": "string" + }, + "UnitPrice": { + "type": "number" + } + } + } + } + } + } + }, + "tags": {} + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentModels.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentModels.json new file mode 100644 index 0000000000000..cd1273aec3914 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetDocumentModels.json @@ -0,0 +1,30 @@ +{ + "operationId": "DocumentModels_ListModels", + "title": "Get Document Models", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "modelId": "prebuilt-layout", + "createdDateTime": "2021-07-30T00:00:00Z", + "description": "Prebuilt model to extract text, selection marks, tables, and other layout information.", + "apiVersion": "2024-02-29-preview" + }, + { + "modelId": "myCustomModel", + "createdDateTime": "2021-09-24T12:54:35Z", + "expirationDateTime": "2023-01-01T00:00:00Z", + "description": "Custom model description", + "apiVersion": "2024-02-29-preview" + } + ], + "nextLink": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels?nextLink=nextLinkData" + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation.json new file mode 100644 index 0000000000000..43cfef3a22d64 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation.json @@ -0,0 +1,28 @@ +{ + "operationId": "MiscellaneousOperations_GetOperation", + "title": "Get Operation", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4" + }, + "responses": { + "200": { + "body": { + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4", + "status": "succeeded", + "percentCompleted": 100, + "createdDateTime": "2021-09-23T09:12:57Z", + "lastUpdatedDateTime": "2021-09-23T09:13:01Z", + "kind": "documentModelBuild", + "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/myCustomModel", + "result": { + "modelId": "myCustomModel", + "description": "Custom model description", + "createdDateTime": "2021-09-23T09:13:01Z", + "apiVersion": "2024-02-29-preview" + } + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation_DocumentClassifierBuild.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation_DocumentClassifierBuild.json new file mode 100644 index 0000000000000..18e2a3bb20268 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation_DocumentClassifierBuild.json @@ -0,0 +1,43 @@ +{ + "operationId": "MiscellaneousOperations_GetDocumentClassifierBuildOperation", + "title": "Get Operation - Document Classifier Build", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4" + }, + "responses": { + "200": { + "body": { + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4", + "status": "succeeded", + "percentCompleted": 100, + "createdDateTime": "2021-09-23T09:12:57Z", + "lastUpdatedDateTime": "2021-09-23T09:13:01Z", + "kind": "documentClassifierBuild", + "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentClassifiers/myClassifier", + "result": { + "classifierId": "myClassifier", + "description": "Classifier description", + "createdDateTime": "2022-07-30T00:00:00Z", + "expirationDateTime": "2023-01-01T00:00:00Z", + "apiVersion": "2024-02-29-preview", + "docTypes": { + "formA": { + "azureBlobSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "prefix": "formADocs/" + } + }, + "formB": { + "azureBlobFileListSource": { + "containerUrl": "https://myStorageAccount.blob.core.windows.net/myContainer", + "fileList": "formB.jsonl" + } + } + } + } + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation_DocumentModelBuild.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation_DocumentModelBuild.json new file mode 100644 index 0000000000000..0a237b5a234c6 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation_DocumentModelBuild.json @@ -0,0 +1,28 @@ +{ + "operationId": "MiscellaneousOperations_GetDocumentModelBuildOperation", + "title": "Get Operation - Document Model Build", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4" + }, + "responses": { + "200": { + "body": { + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4", + "status": "succeeded", + "percentCompleted": 100, + "createdDateTime": "2021-09-23T09:12:57Z", + "lastUpdatedDateTime": "2021-09-23T09:13:01Z", + "kind": "documentModelBuild", + "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/myCustomModel", + "result": { + "modelId": "myCustomModel", + "description": "Custom model description", + "createdDateTime": "2021-09-23T09:13:01Z", + "apiVersion": "2024-02-29-preview" + } + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation_DocumentModelCompose.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation_DocumentModelCompose.json new file mode 100644 index 0000000000000..3cf02e8601ece --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation_DocumentModelCompose.json @@ -0,0 +1,28 @@ +{ + "operationId": "MiscellaneousOperations_GetDocumentModelComposeOperation", + "title": "Get Operation - Document Model Compose", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4" + }, + "responses": { + "200": { + "body": { + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4", + "status": "succeeded", + "percentCompleted": 100, + "createdDateTime": "2021-09-23T09:12:57Z", + "lastUpdatedDateTime": "2021-09-23T09:13:01Z", + "kind": "documentModelCompose", + "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/myCustomModel", + "result": { + "modelId": "myCustomModel", + "description": "Custom model description", + "createdDateTime": "2021-09-23T09:13:01Z", + "apiVersion": "2024-02-29-preview" + } + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation_DocumentModelCopyTo.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation_DocumentModelCopyTo.json new file mode 100644 index 0000000000000..a8fbf1279f942 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperation_DocumentModelCopyTo.json @@ -0,0 +1,28 @@ +{ + "operationId": "MiscellaneousOperations_GetDocumentModelCopyToOperation", + "title": "Get Operation - Document Model Copy To", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview", + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4" + }, + "responses": { + "200": { + "body": { + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4", + "status": "succeeded", + "percentCompleted": 100, + "createdDateTime": "2021-09-23T09:12:57Z", + "lastUpdatedDateTime": "2021-09-23T09:13:01Z", + "kind": "documentModelCopyTo", + "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/myCustomModel", + "result": { + "modelId": "myCustomModel", + "description": "Custom model description", + "createdDateTime": "2021-09-23T09:13:01Z", + "apiVersion": "2024-02-29-preview" + } + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperations.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperations.json new file mode 100644 index 0000000000000..09b590af5fa77 --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetOperations.json @@ -0,0 +1,27 @@ +{ + "operationId": "MiscellaneousOperations_ListOperations", + "title": "Get Operations", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "operationId": "b704bb00-d130-4f3f-a1d8-ca96de3eabb4", + "status": "running", + "percentCompleted": 0, + "createdDateTime": "2021-09-23T09:12:57Z", + "lastUpdatedDateTime": "2021-09-23T09:12:58Z", + "kind": "documentModelBuild", + "resourceLocation": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentModels/myCustomModel", + "apiVersion": "2024-02-29-preview" + } + ], + "nextLink": "https://myendpoint.cognitiveservices.azure.com/documentintelligence/operations?nextLink=nextLinkData" + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetResourceDetails.json b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetResourceDetails.json new file mode 100644 index 0000000000000..cd808cf8bac3c --- /dev/null +++ b/specification/ai/data-plane/DocumentIntelligence/preview/2024-02-29-preview/examples/GetResourceDetails.json @@ -0,0 +1,23 @@ +{ + "operationId": "MiscellaneousOperations_GetResourceInfo", + "title": "Get Resource Details", + "parameters": { + "endpoint": "https://myendpoint.cognitiveservices.azure.com", + "api-version": "2024-02-29-preview" + }, + "responses": { + "200": { + "body": { + "customDocumentModels": { + "count": 2, + "limit": 13 + }, + "customNeuralDocumentModelBuilds": { + "used": 1, + "quota": 10, + "quotaResetDateTime": "2023-03-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/ai/data-plane/DocumentIntelligence/readme.md b/specification/ai/data-plane/DocumentIntelligence/readme.md index a80e333f83902..a393a6c0a4a20 100644 --- a/specification/ai/data-plane/DocumentIntelligence/readme.md +++ b/specification/ai/data-plane/DocumentIntelligence/readme.md @@ -4,17 +4,24 @@ Configuration for generating Document Intelligence SDK. -The current release is `2023-10-31-preview`. +The current release is `2024-02-29-preview`. ``` yaml -tag: 2023-10-31-preview +tag: 2024-02-29-preview add-credentials: true openapi-type: data-plane ``` # Releases +### Release 2024-02-29-preview +These settings apply only when `--tag=2024-02-29-preview` is specified on the command line. +``` yaml $(tag) == '2024-02-29-preview' +input-file: + - preview/2024-02-29-preview/DocumentIntelligence.json +``` + ### Release 2023-10-31-preview These settings apply only when `--tag=2023-10-31-preview` is specified on the command line. ``` yaml $(tag) == '2023-10-31-preview' diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/AlertsManagement.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/AlertsManagement.json new file mode 100644 index 0000000000000..0b603a394cf15 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/AlertsManagement.json @@ -0,0 +1,1603 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-01-preview", + "title": "Azure Alerts Management Service Resource Provider", + "description": "Azure Alerts Management Service provides a single pane of glass of alerts across Azure Monitor." + }, + "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": { + "/providers/Microsoft.AlertsManagement/operations": { + "get": { + "operationId": "Operations_List", + "description": "List all operations available through Azure Alerts Management 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": "#/definitions/errorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ListOperations": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/providers/Microsoft.AlertsManagement/alertsMetaData": { + "get": { + "operationId": "Alerts_MetaData", + "description": "List alerts meta data information based on value of identifier parameter.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/identifier" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK. Successfully listed alert meta data.", + "schema": { + "$ref": "#/definitions/alertsMetaData" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/errorResponse" + } + } + }, + "x-ms-examples": { + "MonService": { + "$ref": "./examples/AlertsMetaData_MonitorService.json" + } + } + } + }, + "/{scope}/providers/Microsoft.AlertsManagement/alerts": { + "get": { + "operationId": "Alerts_GetAll", + "description": "List all existing alerts, where the results can be filtered on the basis of multiple parameters (e.g. time range). The results can then be sorted on the basis specific fields, with the default being lastModifiedDateTime. ", + "parameters": [ + { + "$ref": "#/parameters/scope" + }, + { + "$ref": "#/parameters/targetResource" + }, + { + "$ref": "#/parameters/targetResourceType" + }, + { + "$ref": "#/parameters/targetResourceGroup" + }, + { + "$ref": "#/parameters/monitorService" + }, + { + "$ref": "#/parameters/monitorCondition" + }, + { + "$ref": "#/parameters/severity" + }, + { + "$ref": "#/parameters/alertState" + }, + { + "$ref": "#/parameters/alertRule" + }, + { + "$ref": "#/parameters/smartGroupIdFilter" + }, + { + "$ref": "#/parameters/includeContext" + }, + { + "$ref": "#/parameters/includeEgressConfig" + }, + { + "$ref": "#/parameters/pageCount" + }, + { + "$ref": "#/parameters/alertsSortBy" + }, + { + "$ref": "#/parameters/sortOrder" + }, + { + "$ref": "#/parameters/select" + }, + { + "$ref": "#/parameters/timeRange" + }, + { + "$ref": "#/parameters/customTimeRange" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK. Successfully listed alert objects.", + "schema": { + "$ref": "#/definitions/alertsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/errorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ListAlerts": { + "$ref": "./examples/Alerts_List.json" + } + } + } + }, + "/{scope}/providers/Microsoft.AlertsManagement/alerts/{alertId}": { + "get": { + "operationId": "Alerts_GetById", + "summary": "Get a specific alert.", + "description": "Get information related to a specific alert", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/scope" + }, + { + "$ref": "#/parameters/alertId" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. Returns the alert with the specified ID.", + "schema": { + "$ref": "#/definitions/alert" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/errorResponse" + } + } + }, + "x-ms-examples": { + "GetById": { + "$ref": "./examples/Alerts_GetById.json" + } + } + } + }, + "/{scope}/providers/Microsoft.AlertsManagement/alerts/{alertId}/changestate": { + "post": { + "operationId": "Alerts_ChangeState", + "description": "Change the state of an alert.", + "parameters": [ + { + "$ref": "#/parameters/scope" + }, + { + "$ref": "#/parameters/alertId" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/newState" + }, + { + "$ref": "#/parameters/comment" + } + ], + "responses": { + "200": { + "description": "OK. Alert state updated.", + "schema": { + "$ref": "#/definitions/alert" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/errorResponse" + } + } + }, + "x-ms-examples": { + "Resolve": { + "$ref": "./examples/Alerts_ChangeState.json" + } + } + } + }, + "/{scope}/providers/Microsoft.AlertsManagement/alerts/{alertId}/history": { + "get": { + "operationId": "Alerts_GetHistory", + "description": "Get the history of an alert, which captures any monitor condition changes (Fired/Resolved) and alert state changes (New/Acknowledged/Closed).", + "parameters": [ + { + "$ref": "#/parameters/scope" + }, + { + "$ref": "#/parameters/alertId" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. Returns the history of the specified alert.", + "schema": { + "$ref": "#/definitions/alertModification" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/errorResponse" + } + } + }, + "x-ms-examples": { + "Resolve": { + "$ref": "./examples/Alerts_History.json" + } + } + } + }, + "/{scope}/providers/Microsoft.AlertsManagement/alertsSummary": { + "get": { + "operationId": "Alerts_GetSummary", + "description": "Get a summarized count of your alerts grouped by various parameters (e.g. grouping by 'Severity' returns the count of alerts for each severity).", + "parameters": [ + { + "$ref": "#/parameters/scope" + }, + { + "$ref": "#/parameters/alertsSummaryGroupBy" + }, + { + "$ref": "#/parameters/includeSmartGroupsCount" + }, + { + "$ref": "#/parameters/targetResource" + }, + { + "$ref": "#/parameters/targetResourceType" + }, + { + "$ref": "#/parameters/targetResourceGroup" + }, + { + "$ref": "#/parameters/monitorService" + }, + { + "$ref": "#/parameters/monitorCondition" + }, + { + "$ref": "#/parameters/severity" + }, + { + "$ref": "#/parameters/alertState" + }, + { + "$ref": "#/parameters/alertRule" + }, + { + "$ref": "#/parameters/timeRange" + }, + { + "$ref": "#/parameters/customTimeRange" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. Alert summary returned.", + "schema": { + "$ref": "#/definitions/alertsSummary" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/errorResponse" + } + } + }, + "x-ms-examples": { + "Summary": { + "$ref": "./examples/Alerts_Summary.json" + } + } + } + }, + "/{scope}/providers/Microsoft.AlertsManagement/alerts/{alertId}/enrichments": { + "get": { + "operationId": "Alerts_ListEnrichments", + "description": "List the enrichments of an alert. It returns a collection of one object named default.", + "parameters": [ + { + "$ref": "#/parameters/scope" + }, + { + "$ref": "#/parameters/alertId" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. Returns the enrichments of the specified alert.", + "schema": { + "$ref": "#/definitions/alertEnrichmentsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Resolve": { + "$ref": "./examples/Alerts_ListEnrichments.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/{scope}/providers/Microsoft.AlertsManagement/alerts/{alertId}/enrichments/default": { + "get": { + "operationId": "Alerts_GetEnrichments", + "description": "Get the enrichments of an alert.", + "parameters": [ + { + "$ref": "#/parameters/scope" + }, + { + "$ref": "#/parameters/alertId" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. Returns the enrichments of the specified alert.", + "schema": { + "$ref": "#/definitions/alertEnrichmentResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Resolve": { + "$ref": "./examples/Alerts_GetEnrichments.json" + } + } + } + } + }, + "parameters": { + "scope": { + "name": "scope", + "description": "scope here is resourceId for which alert is created.", + "type": "string", + "in": "path", + "required": true, + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription.", + "minLength": 1 + }, + "alertId": { + "name": "alertId", + "description": "Unique ID of an alert instance.", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "targetResourceGroup": { + "description": "Filter by target resource group name. Default value is select all.", + "name": "targetResourceGroup", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "targetResource": { + "description": "Filter by target resource( which is full ARM ID) Default value is select all.", + "name": "targetResource", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "targetResourceType": { + "description": "Filter by target resource type. Default value is select all.", + "name": "targetResourceType", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "monitorService": { + "description": "Filter by monitor service which generates the alert instance. Default value is select all.", + "name": "monitorService", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method", + "enum": [ + "Application Insights", + "ActivityLog Administrative", + "ActivityLog Security", + "ActivityLog Recommendation", + "ActivityLog Policy", + "ActivityLog Autoscale", + "Log Analytics", + "Nagios", + "Platform", + "SCOM", + "ServiceHealth", + "SmartDetector", + "VM Insights", + "Zabbix", + "Resource Health" + ], + "x-ms-enum": { + "name": "MonitorService", + "modelAsString": true + } + }, + "severity": { + "description": "Filter by severity. Default value is select all.", + "name": "severity", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method", + "enum": [ + "Sev0", + "Sev1", + "Sev2", + "Sev3", + "Sev4" + ], + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + } + }, + "smartGroupIdFilter": { + "description": "Filter the alerts list by the Smart Group Id. Default value is none.", + "name": "smartGroupId", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "smartGroupId": { + "description": "Smart group unique id. ", + "name": "smartGroupId", + "type": "string", + "in": "path", + "required": true, + "x-ms-parameter-location": "method" + }, + "newState": { + "description": "New state of the alert.", + "name": "newState", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method", + "enum": [ + "New", + "Acknowledged", + "Closed" + ], + "x-ms-enum": { + "name": "AlertState", + "modelAsString": true + } + }, + "comment": { + "description": "reason of change alert state", + "name": "comment", + "in": "body", + "required": false, + "x-ms-parameter-location": "method", + "schema": { + "$ref": "#/definitions/comments" + } + }, + "alertState": { + "description": "Filter by state of the alert instance. Default value is to select all.", + "name": "alertState", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method", + "enum": [ + "New", + "Acknowledged", + "Closed" + ], + "x-ms-enum": { + "name": "AlertState", + "modelAsString": true + } + }, + "smartGroupState": { + "description": "Filter by state of the smart group. Default value is to select all.", + "name": "smartGroupState", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method", + "enum": [ + "New", + "Acknowledged", + "Closed" + ], + "x-ms-enum": { + "name": "AlertState", + "modelAsString": true + } + }, + "monitorCondition": { + "description": "Filter by monitor condition which is either 'Fired' or 'Resolved'. Default value is to select all.", + "name": "monitorCondition", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method", + "enum": [ + "Fired", + "Resolved" + ], + "x-ms-enum": { + "name": "MonitorCondition", + "modelAsString": true + } + }, + "alertRule": { + "description": "Filter by specific alert rule. Default value is to select all.", + "name": "alertRule", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "timeRange": { + "description": "Filter by time range by below listed values. Default value is 1 day.", + "name": "timeRange", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method", + "enum": [ + "1h", + "1d", + "7d", + "30d" + ], + "x-ms-enum": { + "name": "TimeRange", + "modelAsString": true + } + }, + "customTimeRange": { + "description": "Filter by custom time range in the format / where time is in (ISO-8601 format)'. Permissible values is within 30 days from query time. Either timeRange or customTimeRange could be used but not both. Default is none.", + "name": "customTimeRange", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "includeContext": { + "description": "Include context which has contextual data specific to the monitor service. Default value is false'", + "name": "includeContext", + "type": "boolean", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "includeEgressConfig": { + "description": "Include egress config which would be used for displaying the content in portal. Default value is 'false'.", + "name": "includeEgressConfig", + "type": "boolean", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "includeSmartGroupsCount": { + "description": "Include count of the SmartGroups as part of the summary. Default value is 'false'.", + "name": "includeSmartGroupsCount", + "type": "boolean", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "pageCount": { + "description": "Determines number of alerts returned per page in response. Permissible value is between 1 to 250. When the \"includeContent\" filter is selected, maximum value allowed is 25. Default value is 25.", + "name": "pageCount", + "type": "integer", + "format": "int64", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "alertsSortBy": { + "description": "Sort the query results by input field, Default value is 'lastModifiedDateTime'.", + "name": "sortBy", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method", + "enum": [ + "name", + "severity", + "alertState", + "monitorCondition", + "targetResource", + "targetResourceName", + "targetResourceGroup", + "targetResourceType", + "startDateTime", + "lastModifiedDateTime" + ], + "x-ms-enum": { + "name": "AlertsSortByFields", + "modelAsString": true + } + }, + "alertsSummaryGroupBy": { + "description": "This parameter allows the result set to be grouped by input fields (Maximum 2 comma separated fields supported). For example, groupby=severity or groupby=severity,alertstate.", + "name": "groupby", + "type": "string", + "in": "query", + "required": true, + "x-ms-parameter-location": "method", + "enum": [ + "severity", + "alertState", + "monitorCondition", + "monitorService", + "signalType", + "alertRule" + ], + "x-ms-enum": { + "name": "AlertsSummaryGroupByFields", + "modelAsString": true + } + }, + "smartGroupsSortBy": { + "description": "Sort the query results by input field. Default value is sort by 'lastModifiedDateTime'.", + "name": "sortBy", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method", + "enum": [ + "alertsCount", + "state", + "severity", + "startDateTime", + "lastModifiedDateTime" + ], + "x-ms-enum": { + "name": "SmartGroupsSortByFields", + "modelAsString": true + } + }, + "sortOrder": { + "description": "Sort the query results order in either ascending or descending. Default value is 'desc' for time fields and 'asc' for others.", + "name": "sortOrder", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method", + "enum": [ + "asc", + "desc" + ], + "x-ms-enum": { + "name": "SortOrder", + "modelAsString": true + } + }, + "select": { + "description": "This filter allows to selection of the fields(comma separated) which would be part of the essential section. This would allow to project only the required fields rather than getting entire content. Default is to fetch all the fields in the essentials section.", + "name": "select", + "type": "string", + "in": "query", + "required": false, + "x-ms-parameter-location": "method" + }, + "identifier": { + "name": "identifier", + "description": "Identification of the information to be retrieved by API call.", + "type": "string", + "in": "query", + "required": true, + "enum": [ + "MonitorServiceList" + ], + "x-ms-enum": { + "name": "identifier", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "operation": { + "type": "object", + "description": "Operation provided by provider", + "properties": { + "name": { + "type": "string", + "description": "Name of the operation" + }, + "display": { + "type": "object", + "description": "Properties of the operation", + "properties": { + "provider": { + "type": "string", + "description": "Provider name" + }, + "resource": { + "type": "string", + "description": "Resource name" + }, + "operation": { + "type": "string", + "description": "Operation name" + }, + "description": { + "type": "string", + "description": "Description of the operation" + } + } + }, + "origin": { + "type": "string", + "description": "Origin of the operation" + } + } + }, + "operationsList": { + "type": "object", + "description": "Lists the operations available in the AlertsManagement RP.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of alerts.", + "type": "string" + }, + "value": { + "description": "Array of operations", + "type": "array", + "items": { + "$ref": "#/definitions/operation" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "value" + ] + }, + "errorResponse": { + "type": "object", + "description": "An error response from the service.", + "properties": { + "error": { + "$ref": "#/definitions/errorResponseBody" + } + } + }, + "errorResponseBody": { + "type": "object", + "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": { + "type": "object", + "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" + } + } + }, + "alert": { + "type": "object", + "description": "An alert created in alert management service.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/alertProperties" + } + } + }, + "alertsList": { + "type": "object", + "description": "List the alerts.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of alerts.", + "type": "string" + }, + "value": { + "description": "List of alerts", + "type": "array", + "items": { + "$ref": "#/definitions/alert" + } + } + } + }, + "alertProperties": { + "type": "object", + "description": "Alert property bag", + "properties": { + "essentials": { + "$ref": "#/definitions/essentials" + }, + "context": { + "$ref": "#/definitions/alertContext" + }, + "egressConfig": { + "$ref": "#/definitions/egressConfig" + } + } + }, + "comments": { + "type": "object", + "description": "Change alert state reason", + "properties": { + "comments": { + "type": "string" + } + } + }, + "egressConfig": { + "type": "object", + "description": "Config which would be used for displaying the data in portal.", + "readOnly": true + }, + "alertContext": { + "type": "object", + "description": "Information specific to the monitor service that gives more contextual details about the alert.", + "readOnly": true + }, + "actionStatus": { + "type": "object", + "description": "Action status", + "properties": { + "isSuppressed": { + "type": "boolean", + "description": "Value indicating whether alert is suppressed." + } + } + }, + "correlationDetails": { + "type": "object", + "description": "Correlation details", + "properties": { + "parentAlertId": { + "type": "string", + "description": "Unique Id (GUID) of the alert that this alert was correlated to.", + "readOnly": true + }, + "correlationDateTime": { + "description": "The alert's correlation date time in ISO-8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "alertProcessingRule": { + "type": "string", + "description": "The alert processing rule that was used to correlate this alert. This is an optional field, it will be presented only for a parent alert.", + "readOnly": true + } + } + }, + "essentials": { + "type": "object", + "description": "This object contains consistent fields across different monitor services.", + "properties": { + "severity": { + "type": "string", + "description": "Severity of alert Sev0 being highest and Sev4 being lowest.", + "readOnly": true, + "enum": [ + "Sev0", + "Sev1", + "Sev2", + "Sev3", + "Sev4" + ], + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + } + }, + "signalType": { + "type": "string", + "description": "The type of signal the alert is based on, which could be metrics, logs or activity logs.", + "readOnly": true, + "enum": [ + "Metric", + "Log", + "Unknown" + ], + "x-ms-enum": { + "name": "SignalType", + "modelAsString": true + } + }, + "alertState": { + "type": "string", + "description": "Alert object state, which can be modified by the user.", + "readOnly": true, + "enum": [ + "New", + "Acknowledged", + "Closed" + ], + "x-ms-enum": { + "name": "AlertState", + "modelAsString": true + } + }, + "monitorCondition": { + "type": "string", + "description": "Condition of the rule at the monitor service. It represents whether the underlying conditions have crossed the defined alert rule thresholds.", + "readOnly": true, + "enum": [ + "Fired", + "Resolved" + ], + "x-ms-enum": { + "name": "MonitorCondition", + "modelAsString": true + } + }, + "targetResource": { + "type": "string", + "description": "Target ARM resource, on which alert got created." + }, + "targetResourceName": { + "type": "string", + "description": "Name of the target ARM resource name, on which alert got created." + }, + "targetResourceGroup": { + "type": "string", + "description": "Resource group of target ARM resource, on which alert got created." + }, + "targetResourceType": { + "type": "string", + "description": "Resource type of target ARM resource, on which alert got created." + }, + "monitorService": { + "type": "string", + "description": "Monitor service on which the rule(monitor) is set.", + "readOnly": true, + "enum": [ + "Application Insights", + "ActivityLog Administrative", + "ActivityLog Security", + "ActivityLog Recommendation", + "ActivityLog Policy", + "ActivityLog Autoscale", + "Log Analytics", + "Nagios", + "Platform", + "SCOM", + "ServiceHealth", + "SmartDetector", + "VM Insights", + "Zabbix", + "Resource Health" + ], + "x-ms-enum": { + "name": "MonitorService", + "modelAsString": true + } + }, + "alertRule": { + "type": "string", + "description": "Rule(monitor) which fired alert instance. Depending on the monitor service, this would be ARM id or name of the rule.", + "readOnly": true + }, + "sourceCreatedId": { + "type": "string", + "description": "Unique Id created by monitor service for each alert instance. This could be used to track the issue at the monitor service, in case of Nagios, Zabbix, SCOM etc.", + "readOnly": true + }, + "smartGroupId": { + "type": "string", + "description": "Unique Id of the smart group", + "readOnly": true + }, + "smartGroupingReason": { + "type": "string", + "description": "Verbose reason describing the reason why this alert instance is added to a smart group", + "readOnly": true + }, + "startDateTime": { + "type": "string", + "format": "date-time", + "description": "Creation time(ISO-8601 format) of alert instance.", + "readOnly": true + }, + "lastModifiedDateTime": { + "type": "string", + "format": "date-time", + "description": "Last modification time(ISO-8601 format) of alert instance.", + "readOnly": true + }, + "monitorConditionResolvedDateTime": { + "type": "string", + "format": "date-time", + "description": "Resolved time(ISO-8601 format) of alert instance. This will be updated when monitor service resolves the alert instance because the rule condition is no longer met.", + "readOnly": true + }, + "lastModifiedUserName": { + "type": "string", + "description": "User who last modified the alert, in case of monitor service updates user would be 'system', otherwise name of the user.", + "readOnly": true + }, + "actionStatus": { + "$ref": "#/definitions/actionStatus" + }, + "description": { + "type": "string", + "description": "Alert description." + }, + "hasEnrichments": { + "type": "boolean", + "description": "Will be presented with the value true only if there are enrichments.", + "readOnly": true + }, + "isStatefulAlert": { + "type": "boolean", + "description": "True if the alert is stateful, and false if it isn't.", + "readOnly": true + }, + "correlationDetails": { + "$ref": "#/definitions/correlationDetails" + } + } + }, + "alertModification": { + "type": "object", + "description": "Alert Modification details", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/alertModificationProperties" + } + } + }, + "alertModificationProperties": { + "type": "object", + "description": "Properties of the alert modification item.", + "properties": { + "alertId": { + "type": "string", + "description": "Unique Id of the alert for which the history is being retrieved", + "readOnly": true + }, + "modifications": { + "type": "array", + "description": "Modification details", + "items": { + "$ref": "#/definitions/alertModificationItem" + }, + "x-ms-identifiers": [] + } + } + }, + "alertModificationItem": { + "type": "object", + "description": "Alert modification item.", + "properties": { + "modificationEvent": { + "type": "string", + "description": "Reason for the modification", + "enum": [ + "AlertCreated", + "StateChange", + "MonitorConditionChange", + "SeverityChange", + "ActionRuleTriggered", + "ActionRuleSuppressed", + "ActionsTriggered", + "ActionsSuppressed", + "ActionsFailed" + ], + "x-ms-enum": { + "name": "AlertModificationEvent" + } + }, + "oldValue": { + "type": "string", + "description": "Old value" + }, + "newValue": { + "type": "string", + "description": "New value" + }, + "modifiedAt": { + "type": "string", + "description": "Modified date and time" + }, + "modifiedBy": { + "type": "string", + "description": "Modified user details (Principal client name)" + }, + "comments": { + "type": "string", + "description": "Modification comments" + }, + "description": { + "type": "string", + "description": "Description of the modification" + } + } + }, + "alertsSummary": { + "type": "object", + "description": "Summary of alerts based on the input filters and 'groupby' parameters.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/alertsSummaryGroup" + } + } + }, + "alertsSummaryGroup": { + "type": "object", + "description": "Group the result set.", + "properties": { + "total": { + "type": "integer", + "format": "int64", + "description": "Total count of the result set." + }, + "smartGroupsCount": { + "type": "integer", + "format": "int64", + "description": "Total count of the smart groups." + }, + "groupedby": { + "type": "string", + "description": "Name of the field aggregated" + }, + "values": { + "type": "array", + "description": "List of the items", + "items": { + "$ref": "#/definitions/alertsSummaryGroupItem" + }, + "x-ms-identifiers": [] + } + } + }, + "alertsSummaryGroupItem": { + "type": "object", + "description": "Alerts summary group item", + "properties": { + "name": { + "type": "string", + "description": "Value of the aggregated field" + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Count of the aggregated field" + }, + "groupedby": { + "type": "string", + "description": "Name of the field aggregated" + }, + "values": { + "type": "array", + "description": "List of the items", + "items": { + "$ref": "#/definitions/alertsSummaryGroupItem" + }, + "x-ms-identifiers": [] + } + } + }, + "alertsMetaData": { + "type": "object", + "description": "alert meta data information.", + "properties": { + "properties": { + "$ref": "#/definitions/alertsMetaDataProperties" + } + } + }, + "alertsMetaDataProperties": { + "type": "object", + "description": "alert meta data property bag", + "discriminator": "metadataIdentifier", + "required": [ + "metadataIdentifier" + ], + "properties": { + "metadataIdentifier": { + "type": "string", + "description": "Identification of the information to be retrieved by API call", + "enum": [ + "MonitorServiceList" + ], + "x-ms-enum": { + "name": "metadataIdentifier", + "modelAsString": true + } + } + } + }, + "MonitorServiceList": { + "type": "object", + "title": "Monitor service details", + "description": "Monitor service details", + "required": [ + "data" + ], + "allOf": [ + { + "$ref": "#/definitions/alertsMetaDataProperties" + }, + { + "type": "object" + } + ], + "properties": { + "data": { + "description": "Array of operations", + "type": "array", + "items": { + "$ref": "#/definitions/MonitorServiceDetails" + }, + "x-ms-identifiers": [] + } + } + }, + "MonitorServiceDetails": { + "type": "object", + "description": "Details of a monitor service", + "properties": { + "name": { + "type": "string", + "description": "Monitor service name" + }, + "displayName": { + "type": "string", + "description": "Monitor service display name" + } + } + }, + "alertEnrichmentResponse": { + "description": "The alert's enrichments.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/alertEnrichmentProperties" + } + } + }, + "alertEnrichmentsList": { + "description": "List the alert's enrichments.", + "type": "object", + "properties": { + "value": { + "description": "List the alert's enrichments", + "type": "array", + "items": { + "$ref": "#/definitions/alertEnrichmentResponse" + } + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page." + } + } + }, + "alertEnrichmentProperties": { + "type": "object", + "description": "Properties of the alert enrichment item.", + "properties": { + "alertId": { + "type": "string", + "description": "Unique Id (GUID) of the alert for which the enrichments are being retrieved.", + "readOnly": true + }, + "enrichments": { + "type": "array", + "description": "Enrichment details", + "items": { + "$ref": "#/definitions/alertEnrichmentItem" + }, + "x-ms-identifiers": [] + } + } + }, + "alertEnrichmentItem": { + "type": "object", + "description": "Alert enrichment item.", + "discriminator": "type", + "required": [ + "title", + "description", + "status", + "type" + ], + "properties": { + "title": { + "type": "string", + "description": "The enrichment title." + }, + "description": { + "type": "string", + "description": "The enrichment description." + }, + "status": { + "type": "string", + "description": "The status of the evaluation of the enrichment.", + "enum": [ + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "status", + "modelAsString": true + } + }, + "errorMessage": { + "type": "string", + "description": "The error message. Will be present only if the status is 'Failed'." + }, + "type": { + "type": "string", + "description": "The enrichment type.", + "enum": [ + "PrometheusInstantQuery", + "PrometheusRangeQuery" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": true + } + } + } + }, + "PrometheusEnrichmentItem": { + "type": "object", + "description": "Prometheus enrichment object.", + "required": [ + "linkToApi", + "datasources", + "grafanaExplorePath", + "query" + ], + "allOf": [ + { + "$ref": "#/definitions/alertEnrichmentItem" + } + ], + "properties": { + "linkToApi": { + "type": "string", + "description": "Link to Prometheus query API (Url format)." + }, + "datasources": { + "type": "array", + "description": "An array of the azure monitor workspace resource ids.", + "items": { + "type": "string", + "description": "The azure monitor workspace resource id." + }, + "x-ms-identifiers": [] + }, + "grafanaExplorePath": { + "type": "string", + "description": "Partial link to the Grafana explore API." + }, + "query": { + "type": "string", + "description": "The Prometheus expression query." + } + } + }, + "PrometheusInstantQuery": { + "x-ms-discriminator-value": "PrometheusInstantQuery", + "type": "object", + "description": "Prometheus instant query enrichment object.", + "required": [ + "time" + ], + "allOf": [ + { + "$ref": "#/definitions/PrometheusEnrichmentItem" + } + ], + "properties": { + "time": { + "type": "string", + "description": "The date and the time of the evaluation." + } + } + }, + "PrometheusRangeQuery": { + "type": "object", + "x-ms-discriminator-value": "PrometheusRangeQuery", + "description": "Prometheus instant query enrichment object.", + "required": [ + "start", + "end", + "step" + ], + "allOf": [ + { + "$ref": "#/definitions/PrometheusEnrichmentItem" + } + ], + "properties": { + "start": { + "type": "string", + "description": "The start evaluation date and time in ISO8601 format.", + "format": "date-time" + }, + "end": { + "type": "string", + "description": "The end evaluation date and time in ISO8601 format.", + "format": "date-time" + }, + "step": { + "type": "string", + "description": "Query resolution step width in ISO8601 format." + } + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/AlertsMetaData_MonitorService.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/AlertsMetaData_MonitorService.json new file mode 100644 index 0000000000000..b4a0a77a0a422 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/AlertsMetaData_MonitorService.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2024-01-01-preview", + "identifier": "MonitorServiceList" + }, + "responses": { + "200": { + "body": { + "properties": { + "metadataIdentifier": "MonitorServiceList", + "data": [ + { + "name": "ActivityLog Administrative", + "displayName": "Activity Log - Administrative" + }, + { + "name": "ActivityLog Autoscale", + "displayName": "Activity Log - Autoscale" + }, + { + "name": "ActivityLog Policy", + "displayName": "Activity Log - Policy" + }, + { + "name": "ActivityLog Recommendation", + "displayName": "Activity Log - Recommendation" + }, + { + "name": "ActivityLog Security", + "displayName": "Activity Log - Security" + }, + { + "name": "Application Insights", + "displayName": "Application Insights" + }, + { + "name": "Azure Backup", + "displayName": "Azure Backup" + }, + { + "name": "Custom", + "displayName": "Custom" + }, + { + "name": "Data Box Edge", + "displayName": "Data Box Edge" + }, + { + "name": "VM Insights", + "displayName": "VM Insights" + }, + { + "name": "Log Analytics", + "displayName": "Log Analytics" + }, + { + "name": "Nagios", + "displayName": "NAGIOS" + }, + { + "name": "Platform", + "displayName": "Platform" + }, + { + "name": "Resource Health", + "displayName": "Resource Health" + }, + { + "name": "SCOM", + "displayName": "SCOM" + }, + { + "name": "ServiceHealth", + "displayName": "Service Health" + }, + { + "name": "Smart Detector", + "displayName": "SmartDetector" + }, + { + "name": "Zabbix", + "displayName": "ZABBIX" + } + ] + } + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_ChangeState.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_ChangeState.json new file mode 100644 index 0000000000000..836d2405facf6 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_ChangeState.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2024-01-01-preview", + "scope": "subscriptions/9e261de7-c804-4b9d-9ebf-6f50fe350a9a", + "alertId": "66114d64-d9d9-478b-95c9-b789d6502100", + "newState": "Acknowledged", + "body": { + "comment": "Acknowledging alert" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "essentials": { + "severity": "Sev3", + "signalType": "Log", + "alertState": "Acknowledged", + "monitorCondition": "Fired", + "monitorService": "Application Insights", + "targetResource": "/subscriptions/3b540246-808d-4331-99aa-917b808a9166/resourcegroups/servicedeskresourcegroup/providers/microsoft.insights/components/servicedeskappinsight", + "targetResourceName": "servicedeskappinsight", + "targetResourceGroup": "servicedeskresourcegroup", + "targetResourceType": "components", + "sourceCreatedId": "6cd6b2ce-8c54-468f-aff0-9d12aebb7e49", + "smartGroupId": "23d6b2ce-8c54-468f-aff0-sd32aebb7e56", + "smartGroupingReason": "Occurred frequently with other alerts", + "alertRule": "https://servisdfsdfappinsight.portal.mms.microsoft.com/#Workspace/overview/settings/details/Edit Alert Rule/details/index?savedSearchId=&scheduleId=", + "startDateTime": "2018-09-13T15:51:02Z", + "lastModifiedDateTime": "2018-09-13T15:51:02Z", + "lastModifiedUserName": "System", + "monitorConditionResolvedDateTime": "2018-09-13T15:51:02Z", + "actionStatus": { + "isSuppressed": false + }, + "hasEnrichments": true, + "isStatefulAlert": true, + "correlationDetails": { + "parentAlertId": "231498c1-7a8f-461a-ae8c-f384e7fc86fa", + "correlationDateTime": "2018-09-13T15:51:02Z" + }, + "description": "description of the alert" + }, + "egressConfig": {}, + "context": {} + }, + "id": "/subscriptions/9e261de7-c804-4b9d-9ebf-6f50fe350a9a/providers/Microsoft.AlertsManagement/alerts/66114d64-d9d9-478b-95c9-b789d6502100", + "type": "Microsoft.AlertsManagement/alerts", + "name": "cpu alert" + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_GetById.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_GetById.json new file mode 100644 index 0000000000000..589912bf10769 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_GetById.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-01-01-preview", + "scope": "subscriptions/9e261de7-c804-4b9d-9ebf-6f50fe350a9a", + "alertId": "66114d64-d9d9-478b-95c9-b789d6502100" + }, + "responses": { + "200": { + "body": { + "properties": { + "essentials": { + "severity": "Sev3", + "signalType": "Log", + "alertState": "Acknowledged", + "monitorCondition": "Fired", + "monitorService": "Application Insights", + "targetResource": "/subscriptions/3b540246-808d-4331-99aa-917b808a9166/resourcegroups/servicedeskresourcegroup/providers/microsoft.insights/components/servicedeskappinsight", + "targetResourceName": "servicedeskappinsight", + "targetResourceGroup": "servicedeskresourcegroup", + "targetResourceType": "components", + "sourceCreatedId": "6cd6b2ce-8c54-468f-aff0-9d12aebb7e49", + "smartGroupId": "23d6b2ce-8c54-468f-aff0-sd32aebb7e56", + "smartGroupingReason": "Occurred frequently with other alerts", + "alertRule": "https://sersdfsdfinsight.portal.mms.microsoft.com/#Workspace/overview/settings/details/Edit Alert Rule/details/index?savedSearchId=&scheduleId=", + "startDateTime": "2018-09-13T15:51:02Z", + "lastModifiedDateTime": "2018-09-13T15:51:02Z", + "lastModifiedUserName": "System", + "monitorConditionResolvedDateTime": "2018-09-13T15:51:02Z", + "actionStatus": { + "isSuppressed": false + }, + "hasEnrichments": true, + "isStatefulAlert": true, + "correlationDetails": { + "parentAlertId": "231498c1-7a8f-461a-ae8c-f384e7fc86fa", + "correlationDateTime": "2018-09-13T15:51:02Z", + "alertProcessingRule": "/subscriptions/3b540246-808d-4331-99aa-917b808a9166/resourceGroups/servicedeskresourcegroup/providers/Microsoft.AlertsManagement/actionRules/alertProcessingRule" + }, + "description": "description of the alert" + }, + "egressConfig": {}, + "context": {} + }, + "id": "/subscriptions/9e261de7-c804-4b9d-9ebf-6f50fe350a9a/providers/Microsoft.AlertsManagement/alerts/66114d64-d9d9-478b-95c9-b789d6502100", + "type": "Microsoft.AlertsManagement/alerts", + "name": "cpu alert" + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_GetEnrichments.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_GetEnrichments.json new file mode 100644 index 0000000000000..a16005e35ebc9 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_GetEnrichments.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2024-01-01-preview", + "scope": "subscriptions/72fa99ef-9c84-4a7c-b343-ec62da107d81", + "alertId": "66114d64-d9d9-478b-95c9-b789d6502101" + }, + "responses": { + "200": { + "body": { + "properties": { + "alertId": "66114d64-d9d9-478b-95c9-b789d6502101", + "enrichments": [ + { + "title": "Number of OOM killed events by container", + "description": "Enrichment description", + "status": "Succeeded", + "type": "PrometheusInstantQuery", + "grafanaExplorePath": "/explore?left=%7B%22datasource%22...", + "linkToApi": "https://test-3sxl.eastus.prometheus.monitor.azure.com/api/v1/query_range?...", + "datasources": [ + "/subscriptions/72fa99ef-9c84-4a7c-b343-ec62da107d81/resourceGroups/SyntheticRules/providers/microsoft.monitor/accounts/canaryamw" + ], + "query": "sum by (cluster,container,replicaset,namespace)(label_replace( kube_pod_container_status_last_terminated_reason{reason='OOMKilled', cluster='cluster1', namespace='namespace1'}'}, 'replicaset', '$1', 'pod', '(.*)(-[a-z0-9]{5})$')) > 0", + "time": "2015-07-01T20:10:51.781Z" + }, + { + "title": "Number of OOM killed events by container", + "description": "Enrichment description", + "status": "Succeeded", + "type": "PrometheusRangeQuery", + "linkToApi": "https://test-3sxl.eastus.prometheus.monitor.azure.com/api/v1/query_range?...", + "grafanaExplorePath": "/explore?left=%7B%22datasource%22...", + "datasources": [ + "/subscriptions/72fa99ef-9c84-4a7c-b343-ec62da107d81/resourceGroups/SyntheticRules/providers/microsoft.monitor/accounts/canaryamw" + ], + "query": "sum by (cluster,container,replicaset,namespace)(label_replace( kube_pod_container_status_last_terminated_reason{reason='OOMKilled', cluster='cluster1', namespace='namespace'}'}, 'replicaset', '$1', 'pod', '(.*)(-[a-z0-9]{5})$')) > 0", + "start": "2015-07-01T20:10:51.781Z", + "end": "2015-07-01T20:20:51.781Z", + "step": "PT15S" + }, + { + "title": "Number of OOM killed events by container", + "description": "Enrichment description", + "status": "Failed", + "type": "PrometheusRangeQuery", + "linkToApi": "https://test-3sxl.eastus.prometheus.monitor.azure.com/api/v1/query_range?...", + "grafanaExplorePath": "/explore?left=%7B%22datasource%22...", + "errorMessage": "Calling Prometheus query API failed", + "datasources": [ + "/subscriptions/72fa99ef-9c84-4a7c-b343-ec62da107d81/resourceGroups/SyntheticRules/providers/microsoft.monitor/accounts/canaryamw" + ], + "query": "sum by (cluster,container,replicaset,namespace)(label_replace( kube_pod_container_status_last_terminated_reason{reason='OOMKilled', cluster='cluster1', namespace='namespace'}'}, 'replicaset', '$1', 'pod', '(.*)(-[a-z0-9]{5})$')) > 0", + "start": "2015-07-01T20:10:51.781Z", + "end": "2015-07-01T20:20:51.781Z", + "step": "PT15S" + } + ] + }, + "id": "/subscriptions/9e261de7-c804-4b9d-9ebf-6f50fe350a9a/providers/Microsoft.AlertsManagement/alerts/66114d64-d9d9-478b-95c9-b789d6502101/enrichments/default", + "type": "Microsoft.AlertsManagement/alerts/enrichments", + "name": "default" + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_History.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_History.json new file mode 100644 index 0000000000000..8b7dca96f99eb --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_History.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2024-01-01-preview", + "scope": "subscriptions/9e261de7-c804-4b9d-9ebf-6f50fe350a9a", + "alertId": "66114d64-d9d9-478b-95c9-b789d6502100" + }, + "responses": { + "200": { + "body": { + "properties": { + "alertId": "66114d64-d9d9-478b-95c9-b789d6502100", + "modifications": [ + { + "modificationEvent": "StateChange", + "oldValue": "New", + "newValue": "Acknowledged", + "modifiedAt": "2018-06-13T06:14:15.7378737Z", + "modifiedBy": "vikramm@microsoft.com", + "comments": "Acknowledging alert", + "description": "State changed from 'New' to 'Acknowledged'" + }, + { + "modificationEvent": "AlertCreated", + "oldValue": "", + "newValue": "", + "modifiedAt": "2018-06-13T06:09:01Z", + "modifiedBy": "System", + "comments": "", + "description": "New Alert Object is created" + } + ] + }, + "id": "/subscriptions/9e261de7-c804-4b9d-9ebf-6f50fe350a9a/providers/Microsoft.AlertsManagement/alerts/66114d64-d9d9-478b-95c9-b789d6502100/history/default", + "type": "Microsoft.AlertsManagement/alerts", + "name": "CPU Alert" + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_List.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_List.json new file mode 100644 index 0000000000000..e7050b7ccc290 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_List.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "api-version": "2024-01-01-preview", + "scope": "subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://management.azure.com:443/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/providers/Microsoft.AlertsManagement/alerts?api-version=2018-05-05-preview&timeRange=1d&ctoken=%2bRID%3aPlwOAPHEGwB9UwEAAAAgCw%3d%3d%23RT%3a2%23TRC%3a500%23RTD%3aqtQyMDE4LTA2LTEyVDE1OjEyOjE1", + "value": [ + { + "properties": { + "essentials": { + "severity": "Sev3", + "signalType": "Log", + "alertState": "Acknowledged", + "monitorCondition": "Fired", + "monitorService": "Application Insights", + "targetResource": "/subscriptions/3b540246-808d-4331-99aa-917b808a9166/resourcegroups/servicedeskresourcegroup/providers/microsoft.insights/components/servicedeskappinsight", + "targetResourceName": "servicedeskappinsight", + "targetResourceGroup": "servicedeskresourcegroup", + "targetResourceType": "components", + "sourceCreatedId": "6cd6b2ce-8c54-468f-aff0-9d12aebb7e49", + "smartGroupId": "23d6b2ce-8c54-468f-aff0-sd32aebb7e56", + "smartGroupingReason": "Occurred frequently with other alerts", + "alertRule": "https://servisdffsdf.portal.mms.microsoft.com/#Workspace/overview/settings/details/Edit Alert Rule/details/index?savedSearchId=&scheduleId=", + "startDateTime": "2018-09-13T15:51:02Z", + "lastModifiedDateTime": "2018-09-13T15:51:02Z", + "lastModifiedUserName": "System", + "monitorConditionResolvedDateTime": "2018-09-13T15:51:02Z", + "actionStatus": { + "isSuppressed": false + }, + "hasEnrichments": true, + "isStatefulAlert": true, + "correlationDetails": { + "parentAlertId": "231498c1-7a8f-461a-ae8c-f384e7fc86fa", + "correlationDateTime": "2018-09-13T15:51:02Z" + }, + "description": "description of the alert" + }, + "egressConfig": {}, + "context": {} + }, + "id": "/subscriptions/9e261de7-c804-4b9d-9ebf-6f50fe350a9a/providers/Microsoft.AlertsManagement/alerts/66114d64-d9d9-478b-95c9-b789d6502100", + "type": "Microsoft.AlertsManagement/alerts", + "name": "cpu alert" + }, + { + "properties": { + "essentials": { + "severity": "Sev3", + "signalType": "Log", + "alertState": "New", + "monitorCondition": "Fired", + "monitorService": "Application Insights", + "targetResource": "/subscriptions/3b540246-808d-4331-99aa-917b808a9166/resourcegroups/cind/providers/microsoft.operationalinsights/workspaces/servicedeskwcus", + "targetResourceName": "servicedeskwcus", + "targetResourceGroup": "servicedeskresourcegroup", + "targetResourceType": "components", + "sourceCreatedId": "6cd6b2ce-8c54-468f-aff0-9d12aebb7e49", + "smartGroupId": "d1c49c89-ea95-4697-a299-c0f5ebac62f1", + "smartGroupingReason": "Alerts that frequently occur together have been grouped.", + "alertRule": "https://servicsdfsdf.portal.mms.microsoft.com/#Workspace/overview/settings/details/Edit Alert Rule/details/index?savedSearchId=&scheduleId=", + "startDateTime": "2018-09-13T15:51:02Z", + "lastModifiedDateTime": "2018-09-13T15:51:02Z", + "lastModifiedUserName": "System", + "monitorConditionResolvedDateTime": "2018-09-13T15:51:02Z", + "actionStatus": { + "isSuppressed": false + }, + "hasEnrichments": true, + "isStatefulAlert": true, + "description": "description of the alert" + }, + "egressConfig": {}, + "context": {} + }, + "id": "/subscriptions/9e261de7-c804-4b9d-9ebf-6f50fe350a9a/providers/Microsoft.AlertsManagement/alerts/66114d64-d9d9-478b-95c9-b789d6502100", + "type": "Microsoft.AlertsManagement/alerts", + "name": "cpu alert" + } + ] + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_ListEnrichments.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_ListEnrichments.json new file mode 100644 index 0000000000000..2bc8c9d23e17e --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_ListEnrichments.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2024-01-01-preview", + "scope": "subscriptions/72fa99ef-9c84-4a7c-b343-ec62da107d81", + "alertId": "66114d64-d9d9-478b-95c9-b789d6502101" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/9e261de7-c804-4b9d-9ebf-6f50fe350a9a/providers/Microsoft.AlertsManagement/alerts/66114d64-d9d9-478b-95c9-b789d6502101/enrichments/default", + "type": "Microsoft.AlertsManagement/alerts/enrichments", + "name": "default", + "properties": { + "alertId": "66114d64-d9d9-478b-95c9-b789d6502101", + "enrichments": [ + { + "title": "Number of OOM killed events by container", + "description": "Enrichment description", + "status": "Succeeded", + "type": "PrometheusInstantQuery", + "grafanaExplorePath": "/explore?left=%7B%22datasource%22...", + "linkToApi": "https://test-3sxl.eastus.prometheus.monitor.azure.com/api/v1/query_range?...", + "datasources": [ + "/subscriptions/72fa99ef-9c84-4a7c-b343-ec62da107d81/resourceGroups/SyntheticRules/providers/microsoft.monitor/accounts/canaryamw" + ], + "query": "sum by (cluster,container,replicaset,namespace)(label_replace( kube_pod_container_status_last_terminated_reason{reason='OOMKilled', cluster='cluster1', namespace='namespace1'}'}, 'replicaset', '$1', 'pod', '(.*)(-[a-z0-9]{5})$')) > 0", + "time": "2015-07-01T20:10:51.781Z" + }, + { + "title": "Number of OOM killed events by container", + "description": "Enrichment description", + "status": "Succeeded", + "type": "PrometheusRangeQuery", + "linkToApi": "https://test-3sxl.eastus.prometheus.monitor.azure.com/api/v1/query_range?...", + "grafanaExplorePath": "/explore?left=%7B%22datasource%22...", + "datasources": [ + "/subscriptions/72fa99ef-9c84-4a7c-b343-ec62da107d81/resourceGroups/SyntheticRules/providers/microsoft.monitor/accounts/canaryamw" + ], + "query": "sum by (cluster,container,replicaset,namespace)(label_replace( kube_pod_container_status_last_terminated_reason{reason='OOMKilled', cluster='cluster1', namespace='namespace'}'}, 'replicaset', '$1', 'pod', '(.*)(-[a-z0-9]{5})$')) > 0", + "start": "2015-07-01T20:10:51.781Z", + "end": "2015-07-01T20:20:51.781Z", + "step": "PT15S" + }, + { + "title": "Number of OOM killed events by container", + "description": "Enrichment description", + "status": "Failed", + "type": "PrometheusRangeQuery", + "linkToApi": "https://test-3sxl.eastus.prometheus.monitor.azure.com/api/v1/query_range?...", + "grafanaExplorePath": "/explore?left=%7B%22datasource%22...", + "errorMessage": "Calling Prometheus query API failed", + "datasources": [ + "/subscriptions/72fa99ef-9c84-4a7c-b343-ec62da107d81/resourceGroups/SyntheticRules/providers/microsoft.monitor/accounts/canaryamw" + ], + "query": "sum by (cluster,container,replicaset,namespace)(label_replace( kube_pod_container_status_last_terminated_reason{reason='OOMKilled', cluster='cluster1', namespace='namespace'}'}, 'replicaset', '$1', 'pod', '(.*)(-[a-z0-9]{5})$')) > 0", + "start": "2015-07-01T20:10:51.781Z", + "end": "2015-07-01T20:20:51.781Z", + "step": "PT15S" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_Summary.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_Summary.json new file mode 100644 index 0000000000000..fca62a562b109 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Alerts_Summary.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2024-01-01-preview", + "scope": "subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d", + "groupby": "severity,alertState" + }, + "responses": { + "200": { + "body": { + "properties": { + "groupedby": "severity", + "smartGroupsCount": 100, + "total": 14189, + "values": [ + { + "name": "Sev0", + "count": 6517, + "groupedby": "alertState", + "values": [ + { + "name": "New", + "count": 6517 + }, + { + "name": "Acknowledged", + "count": 0 + }, + { + "name": "Closed", + "count": 0 + } + ] + }, + { + "name": "Sev1", + "count": 3175, + "groupedby": "alertState", + "values": [ + { + "name": "New", + "count": 3175 + }, + { + "name": "Acknowledged", + "count": 0 + }, + { + "name": "Closed", + "count": 0 + } + ] + }, + { + "name": "Sev2", + "count": 1120, + "groupedby": "alertState", + "values": [ + { + "name": "New", + "count": 1120 + }, + { + "name": "Acknowledged", + "count": 0 + }, + { + "name": "Closed", + "count": 0 + } + ] + }, + { + "name": "Sev3", + "count": 1902, + "groupedby": "alertState", + "values": [ + { + "name": "New", + "count": 1902 + }, + { + "name": "Acknowledged", + "count": 0 + }, + { + "name": "Closed", + "count": 0 + } + ] + }, + { + "name": "Sev4", + "count": 1475, + "groupedby": "alertState", + "values": [ + { + "name": "New", + "count": 1475 + }, + { + "name": "Acknowledged", + "count": 0 + }, + { + "name": "Closed", + "count": 0 + } + ] + } + ] + }, + "id": "/subscriptions/1e3ff1c0-771a-4119-a03b-be82a51e232d/providers/Microsoft.AlertsManagement/alertsSummary/current", + "type": "Microsoft.AlertsManagement/alertsSummary", + "name": "current" + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Operations_List.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Operations_List.json new file mode 100644 index 0000000000000..f6b9907ad08c7 --- /dev/null +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/preview/2024-01-01-preview/examples/Operations_List.json @@ -0,0 +1,211 @@ +{ + "parameters": { + "api-version": "2024-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.AlertsManagement/register/action", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "Subscription", + "operation": "Subscription Registration Action", + "description": "Subscription Registration Action" + } + }, + { + "name": "Microsoft.AlertsManagement/register/action", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "register", + "operation": "Register subscription", + "description": "Registers the subscription for the Microsoft Alerts Management" + } + }, + { + "name": "Microsoft.AlertsManagement/alerts/read", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "alerts", + "operation": "Read alerts", + "description": "Get all the alerts for the input filters." + } + }, + { + "name": "Microsoft.AlertsManagement/alerts/changestate/action", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "alerts", + "operation": "Resolve alerts", + "description": "Change the state of the alert." + } + }, + { + "name": "Microsoft.AlertsManagement/alerts/history/read", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "alerts", + "operation": "Read alert history", + "description": "Get history of the alert" + } + }, + { + "name": "Microsoft.AlertsManagement/smartDetectorAlertRules/write", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "smartDetectorAlertRules", + "operation": "Create Smart Detector alert rule", + "description": "Create or update Smart Detector alert rule in a given subscription" + } + }, + { + "name": "Microsoft.AlertsManagement/smartDetectorAlertRules/read", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "smartDetectorAlertRules", + "operation": "Read Smart Detector alert rules", + "description": "Get all the Smart Detector alert rules for the input filters" + } + }, + { + "name": "Microsoft.AlertsManagement/smartDetectorAlertRules/delete", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "smartDetectorAlertRules", + "operation": "Delete Smart Detector alert rule", + "description": "Delete Smart Detector alert rule in a given subscription" + } + }, + { + "name": "Microsoft.AlertsManagement/resourceHealthAlertRules/write", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "resourceHealthAlertRules", + "operation": "Create Resource Health alert rule", + "description": "Create or update Resource Health alert rule in a given subscription" + } + }, + { + "name": "Microsoft.AlertsManagement/resourceHealthAlertRules/read", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "resourceHealthAlertRules", + "operation": "Read Resource Health alert rules", + "description": "Get all the Resource Health alert rules for the input filters" + } + }, + { + "name": "Microsoft.AlertsManagement/resourceHealthAlertRules/delete", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "resourceHealthAlertRules", + "operation": "Delete Resource Health alert rule", + "description": "Delete Resource Health alert rule in a given subscription" + } + }, + { + "name": "Microsoft.AlertsManagement/migrateFromSmartDetection/read", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "migrateFromSmartDetection", + "operation": "Get Smart Detection Migration status", + "description": "Get the status of an asynchronous Smart Detection to smart alerts migration process" + } + }, + { + "name": "Microsoft.AlertsManagement/migrateFromSmartDetection/action", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "migrateFromSmartDetection", + "operation": "Migrate From Smart Detection", + "description": "Starts an asynchronous migration process of Smart Detection to smart alerts in an Application Insights resource" + } + }, + { + "name": "Microsoft.AlertsManagement/alertsSummary/read", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "alertsSummary", + "operation": "Read alerts summary", + "description": "Get the summary of alerts" + } + }, + { + "name": "Microsoft.AlertsManagement/smartGroups/read", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "smartGroups", + "operation": "Read smart groups", + "description": "Get all the smart groups for the input filters" + } + }, + { + "name": "Microsoft.AlertsManagement/smartGroups/changestate/action", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "smartGroups", + "operation": "Read smart groups", + "description": "Change the state of the smart group" + } + }, + { + "name": "Microsoft.AlertsManagement/smartGroups/history/read", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "smartGroups", + "operation": "Read smart group history", + "description": "Get history of the smart group" + } + }, + { + "name": "Microsoft.AlertsManagement/actionRules/read", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "actionRules", + "operation": "Read action rules", + "description": "Get all the alert processing rules for the input filters." + } + }, + { + "name": "Microsoft.AlertsManagement/actionRules/write", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "actionRules", + "operation": "Write action rule", + "description": "Create or update alert processing rule in a given subscription" + } + }, + { + "name": "Microsoft.AlertsManagement/actionRules/delete", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "actionRules", + "operation": "Delete action rule", + "description": "Delete alert processing rule in a given subscription." + } + }, + { + "name": "Microsoft.AlertsManagement/alertsMetaData/read", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "Microsoft.AlertsManagement/alertsMetaData", + "operation": "Read alerts meta data", + "description": "Get alerts meta data for the input parameter." + } + }, + { + "name": "Microsoft.AlertsManagement/Operations/read", + "display": { + "provider": "Microsoft.AlertsManagement", + "resource": "operations", + "operation": "Read operations", + "description": "Reads the operations provided" + } + } + ] + } + } + } +} diff --git a/specification/alertsmanagement/resource-manager/readme.md b/specification/alertsmanagement/resource-manager/readme.md index d514defadd1a7..d7a51c1ca16a0 100644 --- a/specification/alertsmanagement/resource-manager/readme.md +++ b/specification/alertsmanagement/resource-manager/readme.md @@ -51,6 +51,14 @@ tag: package-2023-03 +### Tag: package-preview-2024-01 + +These settings apply only when `--tag=package-preview-2024-01` is specified on the command line. + +```yaml $(tag) == 'package-preview-2024-01' +input-file: + - Microsoft.AlertsManagement/preview/2024-01-01-preview/AlertsManagement.json +``` ### Tag: package-preview-2023-08 These settings apply only when `--tag=package-preview-2023-08` is specified on the command line. @@ -100,7 +108,7 @@ These settings apply only when `--tag=package-2023-03` is specified on the comma ```yaml $(tag) == 'package-2023-03' input-file: - Microsoft.AlertsManagement/stable/2023-03-01/PrometheusRuleGroups.json - - Microsoft.AlertsManagement/preview/2023-07-12-preview/AlertsManagement.json + - 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/2023-05-01-preview/AlertProcessingRules.json diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/arcSettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/arcSettings.json new file mode 100644 index 0000000000000..d049138e6775f --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/arcSettings.json @@ -0,0 +1,819 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-01", + "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/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/ArcSettingList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/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/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/ArcSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/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/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/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/v3/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/v3/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/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/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/v3/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/v3/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/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" + }, + "202": { + "description": "Accepted" + }, + "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 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/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": "Success", + "schema": { + "$ref": "#/definitions/PasswordCredential" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.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/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/ArcIdentityResponse" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.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/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/ArcSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.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/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" + }, + "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" + } + } + } + }, + "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/v3/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/stable/2024-01-01/clusters.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/clusters.json new file mode 100644 index 0000000000000..bfe0d36201172 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/clusters.json @@ -0,0 +1,1096 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-01", + "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/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/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/v3/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/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ClusterList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.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/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/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/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/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": "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/v3/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/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": "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/v3/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/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" + }, + "204": { + "description": "No content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.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/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": "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/v3/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/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/ClusterIdentityResponse" + } + }, + "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" + } + } + }, + "/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/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": "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/v3/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/v3/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" + }, + "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 + } + } + }, + "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" + } + } + }, + "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 + } + } + }, + "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 + }, + "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 + }, + "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/stable/2024-01-01/common.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/common.json new file mode 100644 index 0000000000000..deaed83255fc4 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/common.json @@ -0,0 +1,64 @@ +{ + "swagger": "2.0", + "info": { + "title": "AzureStackHCI", + "description": "The Microsoft.AzureStackHCI Rest API spec", + "version": "2024-01-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": {}, + "definitions": { + "ExtendedLocationType": { + "type": "string", + "description": "The type of extendedLocation.", + "enum": [ + "CustomLocation" + ], + "x-ms-enum": { + "name": "ExtendedLocationTypes", + "modelAsString": true + } + }, + "ExtendedLocation": { + "description": "The complex type of the extended location.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "$ref": "#/definitions/ExtendedLocationType", + "description": "The type of the extended location." + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/deploymentSettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/deploymentSettings.json new file mode 100644 index 0000000000000..a8b44db03bb49 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/deploymentSettings.json @@ -0,0 +1,1007 @@ +{ + "swagger": "2.0", + "info": { + "title": "Deployment Settings", + "version": "2024-01-01", + "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/v3/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/ClusterNameParameter" + } + ], + "responses": { + "200": { + "description": "ARM operation completed successfully.", + "schema": { + "$ref": "#/definitions/DeploymentSettingListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/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/v3/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/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/v3/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/v3/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/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/v3/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/v3/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/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/v3/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." + } + } + }, + "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." + }, + "adouPath": { + "type": "string", + "description": "The path to the Active Directory Organizational Unit container object prepared for the deployment. " + }, + "secretsLocation": { + "type": "string", + "description": "The URI to the keyvault / secret store." + }, + "optionalServices": { + "$ref": "#/definitions/OptionalServices", + "description": "OptionalServices config to deploy AzureStackHCI Cluster." + } + } + }, + "DeploymentMode": { + "type": "string", + "description": "The deployment mode for cluster deployment.", + "enum": [ + "Validate", + "Deploy" + ], + "default": "Deploy", + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": true, + "values": [ + { + "name": "Validate", + "value": "Validate", + "description": "Validate deployment settings for cluster." + }, + { + "name": "Deploy", + "value": "Deploy", + "description": "Deploy cluster using deployment settings." + } + ] + } + }, + "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/v3/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": "#/definitions/ProvisioningState", + "description": "DeploymentSetting provisioning state" + }, + "arcNodeResourceIds": { + "type": "array", + "description": "Azure resource ids of Arc machines to be part of cluster.", + "items": { + "type": "string" + }, + "x-ms-identifiers": [] + }, + "deploymentMode": { + "$ref": "#/definitions/DeploymentMode", + "description": "The deployment mode for cluster deployment." + }, + "deploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration", + "description": "Scale units will contains list of deployment data", + "x-ms-identifiers": [] + }, + "reportedProperties": { + "$ref": "#/definitions/ReportedProperties", + "description": "Deployment Status reported from cluster.", + "readOnly": true + } + }, + "required": [ + "arcNodeResourceIds", + "deploymentMode", + "deploymentConfiguration" + ] + }, + "DeploymentStatus": { + "type": "object", + "description": "The DeploymentStatus of AzureStackHCI Cluster.", + "properties": { + "status": { + "type": "string", + "description": "Status of 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": [] + } + } + }, + "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." + } + } + }, + "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." + } + } + }, + "ProvisioningState": { + "type": "string", + "description": "The provisioning state of a resource.", + "readOnly": true, + "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" + } + ] + } + }, + "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." + } + } + }, + "ReportedProperties": { + "type": "object", + "description": "The DeploymentStatus of AzureStackHCI Cluster.", + "properties": { + "validationStatus": { + "$ref": "#/definitions/ValidationStatus", + "description": "validation status of AzureStackHCI Cluster Deployment.", + "readOnly": true + }, + "deploymentStatus": { + "$ref": "#/definitions/DeploymentStatus", + "description": "Deployment status of AzureStackHCI Cluster Deployment.", + "readOnly": true + } + } + }, + "ScaleUnits": { + "type": "object", + "description": "Scale units will contains list of deployment data", + "properties": { + "deploymentData": { + "$ref": "#/definitions/DeploymentData", + "description": "Deployment Data to deploy AzureStackHCI Cluster." + } + }, + "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" + } + }, + "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 + } + } + }, + "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": [] + } + } + }, + "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" + } + } + }, + "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. " + } + } + }, + "ValidationStatus": { + "type": "object", + "description": "The ValidationStatus of AzureStackHCI Cluster.", + "properties": { + "status": { + "type": "string", + "description": "Status of 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": [] + } + } + }, + "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/stable/2024-01-01/edgeDevices.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/edgeDevices.json new file mode 100644 index 0000000000000..b4cf817d4bf4d --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/edgeDevices.json @@ -0,0 +1,553 @@ +{ + "swagger": "2.0", + "info": { + "title": "Edge Devices", + "version": "2024-01-01", + "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/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.ResourceManager.ResourceUriParameter" + } + ], + "responses": { + "200": { + "description": "ARM operation completed successfully.", + "schema": { + "$ref": "#/definitions/EdgeDeviceListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/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/v3/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": "ARM operation completed successfully.", + "schema": { + "$ref": "#/definitions/EdgeDevice" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/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/v3/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": "Resource 'EdgeDevice' update operation succeeded", + "schema": { + "$ref": "#/definitions/EdgeDevice" + } + }, + "201": { + "description": "Resource 'EdgeDevice' create operation succeeded", + "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/v3/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 Edge Device": { + "$ref": "./examples/PutEdgeDevices.json" + } + } + }, + "delete": { + "operationId": "EdgeDevices_Delete", + "tags": [ + "EdgeDevices" + ], + "description": "Delete a EdgeDevice", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/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/v3/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/v3/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": "ARM 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/v3/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": { + "DeviceConfiguration": { + "type": "object", + "description": "The device Configuration of a device.", + "properties": { + "nicDetails": { + "type": "array", + "description": "NIC Details of device", + "items": { + "$ref": "#/definitions/NicDetail" + }, + "x-ms-identifiers": [] + }, + "deviceMetadata": { + "type": "string", + "description": "device metadata details." + } + } + }, + "EdgeDevice": { + "type": "object", + "description": "Edge device resource", + "properties": { + "properties": { + "$ref": "#/definitions/EdgeDeviceProperties", + "description": "The resource-specific properties for this resource.", + "x-ms-client-flatten": true, + "x-ms-mutability": [ + "read", + "create" + ] + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ] + }, + "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": "#/definitions/ProvisioningState", + "description": "Provisioning state of edgeDevice resource" + } + } + }, + "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" + } + }, + "required": [ + "adapterName" + ] + }, + "ProvisioningState": { + "type": "string", + "description": "The provisioning state of a resource.", + "readOnly": true, + "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" + } + ] + } + }, + "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 + } + } + } + }, + "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/stable/2024-01-01/examples/ConsentAndInstallDefaultExtensions.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ConsentAndInstallDefaultExtensions.json new file mode 100644 index 0000000000000..43a275cefb16d --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ConsentAndInstallDefaultExtensions.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "arcSettingName": "default", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/CreateArcIdentity.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/CreateArcIdentity.json new file mode 100644 index 0000000000000..380f41e1ada9b --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/CreateArcIdentity.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "arcSettingName": "default", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/CreateCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/CreateCluster.json new file mode 100644 index 0000000000000..72abaa3ff19e1 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/CreateCluster.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "api-version": "2024-01-01", + "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/stable/2024-01-01/examples/CreateClusterIdentity.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/CreateClusterIdentity.json new file mode 100644 index 0000000000000..97d757307472c --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/CreateClusterIdentity.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/CreateGuestAgent.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/CreateGuestAgent.json new file mode 100644 index 0000000000000..83b3ebd8e1280 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/CreateGuestAgent.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM", + "body": { + "properties": { + "provisioningAction": "install", + "credentials": { + "username": "tempuser", + "password": "" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/guestAgents/default", + "name": "default", + "type": "Microsoft.AzureStackHCI/virtualMachineInstances/guestAgents", + "properties": { + "provisioningAction": "install", + "status": "connected", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/guestAgents/default", + "name": "default", + "type": "Microsoft.AzureStackHCI/virtualMachineInstances/guestAgents", + "properties": { + "provisioningAction": "install", + "status": "connected", + "provisioningState": "Created" + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteArcSetting.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteArcSetting.json new file mode 100644 index 0000000000000..e2aed1d686727 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteArcSetting.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "arcSettingName": "default", + "api-version": "2024-01-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "location": "https://foo.com/operationStatuses" + } + }, + "204": {} + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteCluster.json new file mode 100644 index 0000000000000..4a58398d23a17 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteCluster.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "api-version": "2024-01-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "location": "https://foo.com/operationStatuses" + } + }, + "204": {} + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteDeploymentSettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteDeploymentSettings.json new file mode 100644 index 0000000000000..a6fa8af5358f5 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteDeploymentSettings.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "deploymentSettingsName": "default", + "api-version": "2024-01-01" + }, + "responses": { + "202": { + "headers": { + "location": "https://foo.com/operationStatuses" + } + }, + "204": {} + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteEdgeDevices.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteEdgeDevices.json new file mode 100644 index 0000000000000..c7752972a6886 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "responses": { + "202": { + "headers": { + "location": "https://foo.com/operationStatuses" + } + }, + "204": {} + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteExtension.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteExtension.json new file mode 100644 index 0000000000000..da8a169c21983 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "location": "https://foo.com/operationStatuses" + } + }, + "204": {} + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteGalleryImage.json new file mode 100644 index 0000000000000..04dcc5f333ab2 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteGalleryImage.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "galleryImageName": "test-gallery-image", + "api-version": "2024-01-01" + }, + "responses": { + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + }, + "204": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteGuestAgent.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteGuestAgent.json new file mode 100644 index 0000000000000..55643ab84318a --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteGuestAgent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM" + }, + "responses": { + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + }, + "204": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteLogicalNetwork.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteLogicalNetwork.json new file mode 100644 index 0000000000000..b9ffed75286cf --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteLogicalNetwork.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "logicalNetworkName": "test-lnet", + "api-version": "2024-01-01" + }, + "responses": { + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + }, + "204": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteMarketplaceGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteMarketplaceGalleryImage.json new file mode 100644 index 0000000000000..843cca71a379e --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteMarketplaceGalleryImage.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "marketplaceGalleryImageName": "test-marketplace-gallery-image", + "api-version": "2024-01-01" + }, + "responses": { + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + }, + "204": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteNetworkInterface.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteNetworkInterface.json new file mode 100644 index 0000000000000..7179760d7e10c --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteNetworkInterface.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "networkInterfaceName": "test-nic", + "api-version": "2024-01-01" + }, + "responses": { + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + }, + "204": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteSecuritySettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteSecuritySettings.json new file mode 100644 index 0000000000000..3f6c0432e73a1 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteSecuritySettings.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "securitySettingsName": "default", + "api-version": "2024-01-01" + }, + "responses": { + "202": { + "headers": { + "location": "https://foo.com/operationStatuses" + } + }, + "204": {} + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteStorageContainer.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteStorageContainer.json new file mode 100644 index 0000000000000..994a65a12297e --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteStorageContainer.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "storageContainerName": "Default_Container", + "api-version": "2024-01-01" + }, + "responses": { + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + }, + "204": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteUpdateRuns.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteUpdateRuns.json new file mode 100644 index 0000000000000..98e75140c4529 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "location": "https://foo.com/operationStatuses" + } + }, + "204": {} + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteUpdateSummaries.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteUpdateSummaries.json new file mode 100644 index 0000000000000..a5d71719bd4af --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteUpdateSummaries.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712", + "resourceGroupName": "testrg", + "clusterName": "testcluster", + "api-version": "2024-01-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "location": "https://foo.com/operationStatuses" + } + }, + "204": {} + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteUpdates.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteUpdates.json new file mode 100644 index 0000000000000..80839e32fb125 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "location": "https://foo.com/operationStatuses" + } + }, + "204": {} + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteVirtualHardDisk.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteVirtualHardDisk.json new file mode 100644 index 0000000000000..85300346526db --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteVirtualHardDisk.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "virtualHardDiskName": "test-vhd", + "api-version": "2024-01-01" + }, + "responses": { + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + }, + "204": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteVirtualMachineInstance.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteVirtualMachineInstance.json new file mode 100644 index 0000000000000..55643ab84318a --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/DeleteVirtualMachineInstance.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM" + }, + "responses": { + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + }, + "204": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ExtendSoftwareAssuranceBenefit.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ExtendSoftwareAssuranceBenefit.json new file mode 100644 index 0000000000000..f4e6a598248bf --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ExtendSoftwareAssuranceBenefit.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "api-version": "2024-01-01", + "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/stable/2024-01-01/examples/Extensions_Upgrade.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/Extensions_Upgrade.json new file mode 100644 index 0000000000000..2eaf3ab6ca0fa --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01", + "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/stable/2024-01-01/examples/GeneratePassword.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GeneratePassword.json new file mode 100644 index 0000000000000..899b5ba92ae96 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GeneratePassword.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "arcSettingName": "default", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/GetArcSetting.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetArcSetting.json new file mode 100644 index 0000000000000..ab47f9d0c4eb8 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetArcSetting.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "arcSettingName": "default", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/GetCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetCluster.json new file mode 100644 index 0000000000000..90d7706c3ccfd --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetCluster.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "api-version": "2024-01-01" + }, + "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" + }, + "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" + }, + "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/stable/2024-01-01/examples/GetDeploymentSettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetDeploymentSettings.json new file mode 100644 index 0000000000000..878e70cc429b6 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetDeploymentSettings.json @@ -0,0 +1,211 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "deploymentSettingsName": "default", + "api-version": "2024-01-01" + }, + "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" + } + ], + "storageConnectivitySwitchless": 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", + "optionalServices": { + "customLocation": "customLocationName" + } + } + } + ] + }, + "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/stable/2024-01-01/examples/GetEdgeDevices.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetEdgeDevices.json new file mode 100644 index 0000000000000..8e025cff30c07 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetEdgeDevices.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1", + "edgeDeviceName": "default", + "api-version": "2024-01-01" + }, + "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", + "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/stable/2024-01-01/examples/GetExtension.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetExtension.json new file mode 100644 index 0000000000000..9f433df127c88 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "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/stable/2024-01-01/examples/GetGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetGalleryImage.json new file mode 100644 index 0000000000000..2b9ed7a81d383 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetGalleryImage.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "galleryImageName": "test-gallery-image", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image", + "name": "test-gallery-image", + "type": "Microsoft.AzureStackHCI/galleryImages", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "containerId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-storage-container", + "osType": "Windows", + "cloudInitDataSource": "NoCloud", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "version": { + "name": "1.0.0", + "properties": { + "storageProfile": { + "osDiskImage": { + "sizeInMB": 30270 + } + } + } + }, + "status": { + "provisioningStatus": { + "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0", + "status": "Succeeded" + }, + "progressPercentage": 100, + "downloadStatus": { + "downloadSizeInMB": 9383 + } + } + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetGuestAgent.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetGuestAgent.json new file mode 100644 index 0000000000000..04edcb0612f97 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetGuestAgent.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/guestAgents/default", + "name": "default", + "type": "Microsoft.AzureStackHCI/virtualMachineInstances/guestAgents", + "properties": { + "provisioningAction": "install", + "status": "connected", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetHybridIdentityMetadata.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetHybridIdentityMetadata.json new file mode 100644 index 0000000000000..f574a8e40e114 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetHybridIdentityMetadata.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/hybridIdentityMetadata/default", + "name": "default", + "type": "Microsoft.AzureStackHCI/virtualMachineInstances/hybridIdentityMetadata", + "properties": { + "publicKey": "8ec7d60c-9700-40b1-8e6e-e5b2f6f477f2", + "identity": { + "principalId": "7b5129bc-8642-4a6a-95f8-63400ca6ec4d", + "tenantId": "ec46ca82-5d4a-4e3e-b4b7-e27f9318645d", + "type": "SystemAssigned" + } + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetLogicalNetwork.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetLogicalNetwork.json new file mode 100644 index 0000000000000..29658de608a76 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetLogicalNetwork.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "logicalNetworkName": "test-lnet", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/logicalNetworks/test-lnet", + "name": "test-lnet", + "type": "Microsoft.AzureStackHCI/logicalNetworks", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted" + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetMarketplaceGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetMarketplaceGalleryImage.json new file mode 100644 index 0000000000000..a7e7ae8c800f1 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetMarketplaceGalleryImage.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "marketplaceGalleryImageName": "test-marketplace-gallery-image", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image", + "name": "test-marketplace-gallery-image", + "type": "Microsoft.AzureStackHCI/marketplaceGalleryImages", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "containerId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-storage-container", + "osType": "Windows", + "cloudInitDataSource": "NoCloud", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "version": { + "name": "1.0.0", + "properties": { + "storageProfile": { + "osDiskImage": { + "sizeInMB": 30270 + } + } + } + }, + "status": { + "provisioningStatus": { + "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0", + "status": "Succeeded" + }, + "progressPercentage": 100, + "downloadStatus": { + "downloadSizeInMB": 9383 + } + } + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetNetworkInterface.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetNetworkInterface.json new file mode 100644 index 0000000000000..6e06606308c5f --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetNetworkInterface.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "networkInterfaceName": "test-nic", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/networkInterfaces/test-nic", + "name": "test-nic", + "type": "Microsoft.AzureStackHCI/networkInterfaces", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "ipConfigurations": [ + { + "name": "ipconfig-sample", + "properties": { + "subnet": { + "id": "external" + } + } + } + ] + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetOffer.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetOffer.json new file mode 100644 index 0000000000000..10033e055875b --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "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.

    Legal Terms

    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/stable/2024-01-01/examples/GetPublisher.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetPublisher.json new file mode 100644 index 0000000000000..bb35d0e5b86e8 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetPublisher.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "publisherName": "publisher1", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/GetSecuritySettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetSecuritySettings.json new file mode 100644 index 0000000000000..bae6491691439 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetSecuritySettings.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "securitySettingsName": "default", + "api-version": "2024-01-01" + }, + "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", + "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/stable/2024-01-01/examples/GetSku.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetSku.json new file mode 100644 index 0000000000000..f51c7513ae122 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "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.

    Legal Terms

    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/stable/2024-01-01/examples/GetStorageContainer.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetStorageContainer.json new file mode 100644 index 0000000000000..29c36ba302ef1 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetStorageContainer.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "storageContainerName": "Default_Container", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/Default_Container", + "name": "Default_Container", + "type": "Microsoft.AzureStackHCI/storageContainers", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "path": "C:\\container_storage" + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetUpdateRuns.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetUpdateRuns.json new file mode 100644 index 0000000000000..a6b460a84c37f --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "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/stable/2024-01-01/examples/GetUpdateSummaries.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetUpdateSummaries.json new file mode 100644 index 0000000000000..6b1558af1e6f9 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetUpdateSummaries.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712", + "resourceGroupName": "testrg", + "clusterName": "testcluster", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/GetUpdates.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetUpdates.json new file mode 100644 index 0000000000000..4733590193f63 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "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/stable/2024-01-01/examples/GetVirtualHardDisk.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetVirtualHardDisk.json new file mode 100644 index 0000000000000..680e3ad746021 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetVirtualHardDisk.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "virtualHardDiskName": "test-vhd", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd", + "name": "test-vhd", + "type": "Microsoft.AzureStackHCI/virtualHardDisks", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "diskSizeGB": 32, + "blockSizeBytes": 0, + "logicalSectorBytes": 512, + "physicalSectorBytes": 512, + "provisioningState": "Accepted", + "diskFileFormat": "vhdx", + "hyperVGeneration": "V2", + "dynamic": true + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetVirtualMachineInstance.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetVirtualMachineInstance.json new file mode 100644 index 0000000000000..ad872acca2bea --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GetVirtualMachineInstance.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default", + "name": "default", + "type": "Microsoft.AzureStackHCI/virtualMachineInstances", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "storageProfile": { + "imageReference": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + } + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GuestAgent_List.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GuestAgent_List.json new file mode 100644 index 0000000000000..fe099ef5561ef --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/GuestAgent_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/guestAgents/default", + "name": "default", + "type": "Microsoft.AzureStackHCI/virtualMachineInstances/guestAgents", + "properties": { + "provisioningAction": "install", + "status": "connected", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/HybridIdentityMetadata_List.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/HybridIdentityMetadata_List.json new file mode 100644 index 0000000000000..69f7eb68f4ff5 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/HybridIdentityMetadata_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/hybridIdentityMetadata/default", + "name": "default", + "type": "Microsoft.AzureStackHCI/virtualMachineInstances/hybridIdentityMetadata", + "properties": { + "publicKey": "8ec7d60c-9700-40b1-8e6e-e5b2f6f477f2", + "identity": { + "principalId": "7b5129bc-8642-4a6a-95f8-63400ca6ec4d", + "tenantId": "ec46ca82-5d4a-4e3e-b4b7-e27f9318645d", + "type": "SystemAssigned" + } + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/InitializeDisableProcess.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/InitializeDisableProcess.json new file mode 100644 index 0000000000000..9572ce05d1700 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/InitializeDisableProcess.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "arcSettingName": "default", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/ListArcSettingsByCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListArcSettingsByCluster.json new file mode 100644 index 0000000000000..7c0e9fadf6f31 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListArcSettingsByCluster.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/ListClustersByResourceGroup.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListClustersByResourceGroup.json new file mode 100644 index 0000000000000..4706e6f2614cd --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListClustersByResourceGroup.json @@ -0,0 +1,131 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/ListClustersBySubscription.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListClustersBySubscription.json new file mode 100644 index 0000000000000..d08d27855516d --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListClustersBySubscription.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/ListDeploymentSettingsByCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListDeploymentSettingsByCluster.json new file mode 100644 index 0000000000000..2064fd23f2c28 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListDeploymentSettingsByCluster.json @@ -0,0 +1,144 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "api-version": "2024-01-01" + }, + "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", + "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" + } + ], + "storageConnectivitySwitchless": 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", + "optionalServices": { + "customLocation": "customLocationName" + } + } + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListEdgeDevices.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListEdgeDevices.json new file mode 100644 index 0000000000000..ede54bccc2a5f --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListEdgeDevices.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1", + "edgeDeviceName": "default", + "api-version": "2024-01-01" + }, + "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", + "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/stable/2024-01-01/examples/ListExtensionsByArcSetting.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListExtensionsByArcSetting.json new file mode 100644 index 0000000000000..72cc8af252987 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListExtensionsByArcSetting.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "arcSettingName": "default", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/ListGalleryImageByResourceGroup.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListGalleryImageByResourceGroup.json new file mode 100644 index 0000000000000..a29cf3349bf2c --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListGalleryImageByResourceGroup.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image", + "name": "test-gallery-image", + "type": "Microsoft.AzureStackHCI/galleryImages", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "containerId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-storage-container", + "osType": "Linux", + "cloudInitDataSource": "NoCloud", + "hyperVGeneration": "V2", + "version": { + "properties": { + "storageProfile": { + "osDiskImage": { + "sizeInMB": 30270 + } + } + } + }, + "status": { + "provisioningStatus": { + "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0", + "status": "Succeeded" + }, + "progressPercentage": 100, + "downloadStatus": { + "downloadSizeInMB": 9383 + } + } + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListGalleryImageBySubscription.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListGalleryImageBySubscription.json new file mode 100644 index 0000000000000..b7441f1920d61 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListGalleryImageBySubscription.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image", + "name": "test-gallery-image", + "type": "Microsoft.AzureStackHCI/galleryImages", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "containerId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-storage-container", + "osType": "Linux", + "cloudInitDataSource": "NoCloud", + "hyperVGeneration": "V2", + "version": { + "properties": { + "storageProfile": { + "osDiskImage": { + "sizeInMB": 30270 + } + } + } + }, + "status": { + "provisioningStatus": { + "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0", + "status": "Succeeded" + }, + "progressPercentage": 100, + "downloadStatus": { + "downloadSizeInMB": 9383 + } + } + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListLogicalNetworkByResourceGroup.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListLogicalNetworkByResourceGroup.json new file mode 100644 index 0000000000000..60344d4a1f7bb --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListLogicalNetworkByResourceGroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-lnet", + "name": "test-lnet", + "type": "Microsoft.AzureStackHCI/logicalNetworks", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted" + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListLogicalNetworkBySubscription.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListLogicalNetworkBySubscription.json new file mode 100644 index 0000000000000..aa7192e27b468 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListLogicalNetworkBySubscription.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/logicalNetworks/test-lnet", + "name": "test-lnet", + "type": "Microsoft.AzureStackHCI/logicalNetworks", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted" + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListMarketplaceGalleryImageByResourceGroup.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListMarketplaceGalleryImageByResourceGroup.json new file mode 100644 index 0000000000000..012050c312346 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListMarketplaceGalleryImageByResourceGroup.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image", + "name": "test-marketplace-gallery-image", + "type": "Microsoft.AzureStackHCI/marketplaceGalleryImages", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "containerId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-storage-container", + "osType": "Windows", + "cloudInitDataSource": "Azure", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "version": { + "name": "1.0.0", + "properties": { + "storageProfile": { + "osDiskImage": { + "sizeInMB": 30270 + } + } + } + }, + "status": { + "provisioningStatus": { + "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0", + "status": "Succeeded" + }, + "progressPercentage": 100, + "downloadStatus": { + "downloadSizeInMB": 9383 + } + } + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListMarketplaceGalleryImageBySubscription.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListMarketplaceGalleryImageBySubscription.json new file mode 100644 index 0000000000000..3b9006e950f2d --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListMarketplaceGalleryImageBySubscription.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image", + "name": "test-marketplace-gallery-image", + "type": "Microsoft.AzureStackHCI/marketplaceGalleryImages", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "containerId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-storage-container", + "osType": "Windows", + "cloudInitDataSource": "Azure", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "version": { + "name": "1.0.0", + "properties": { + "storageProfile": { + "osDiskImage": { + "sizeInMB": 30270 + } + } + } + }, + "status": { + "provisioningStatus": { + "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0", + "status": "Succeeded" + }, + "progressPercentage": 100, + "downloadStatus": { + "downloadSizeInMB": 9383 + } + } + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListNetworkInterfaceByResourceGroup.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListNetworkInterfaceByResourceGroup.json new file mode 100644 index 0000000000000..a31f021da53a5 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListNetworkInterfaceByResourceGroup.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "networkInterfaceName": "test-nic", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/networkInterfaces/test-nic", + "name": "test-nic", + "type": "Microsoft.AzureStackHCI/networkInterfaces", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "ipConfigurations": [ + { + "name": "ipconfig-sample", + "properties": { + "subnet": { + "id": "external" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListNetworkInterfaceBySubscription.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListNetworkInterfaceBySubscription.json new file mode 100644 index 0000000000000..a31f021da53a5 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListNetworkInterfaceBySubscription.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "networkInterfaceName": "test-nic", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/networkInterfaces/test-nic", + "name": "test-nic", + "type": "Microsoft.AzureStackHCI/networkInterfaces", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "ipConfigurations": [ + { + "name": "ipconfig-sample", + "properties": { + "subnet": { + "id": "external" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListOffersByCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListOffersByCluster.json new file mode 100644 index 0000000000000..59ed7975ae211 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListOffersByCluster.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "api-version": "2024-01-01" + }, + "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.

    Legal Terms

    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/stable/2024-01-01/examples/ListOffersByPublisher.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListOffersByPublisher.json new file mode 100644 index 0000000000000..dffe8d5a55ecb --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListOffersByPublisher.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "publisherName": "publisher1", + "api-version": "2024-01-01" + }, + "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.

    Legal Terms

    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/stable/2024-01-01/examples/ListOperations.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListOperations.json new file mode 100644 index 0000000000000..e46c5779ed4d6 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListOperations.json @@ -0,0 +1,453 @@ +{ + "parameters": { + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/ListPublishersByCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListPublishersByCluster.json new file mode 100644 index 0000000000000..a34f4430c846e --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListPublishersByCluster.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/ListSecuritySettingsByCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListSecuritySettingsByCluster.json new file mode 100644 index 0000000000000..1577393463723 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListSecuritySettingsByCluster.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "api-version": "2024-01-01" + }, + "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", + "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/stable/2024-01-01/examples/ListSkusByOffer.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListSkusByOffer.json new file mode 100644 index 0000000000000..0191712754d31 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "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.

    Legal Terms

    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/stable/2024-01-01/examples/ListStorageContainerByResourceGroup.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListStorageContainerByResourceGroup.json new file mode 100644 index 0000000000000..ba5efac91d972 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListStorageContainerByResourceGroup.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/Default_Container", + "name": "Default_Container", + "type": "Microsoft.AzureStackHCI/storageContainers", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "path": "C:\\container_storage" + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListStorageContainerBySubscription.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListStorageContainerBySubscription.json new file mode 100644 index 0000000000000..0288be3607f90 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListStorageContainerBySubscription.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/Default_Container", + "name": "Default_Container", + "type": "Microsoft.AzureStackHCI/storageContainers", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "path": "C:\\container_storage" + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListUpdateRuns.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListUpdateRuns.json new file mode 100644 index 0000000000000..0968ba77bb59c --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "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/stable/2024-01-01/examples/ListUpdateSummaries.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListUpdateSummaries.json new file mode 100644 index 0000000000000..1f0f7c2f1cce7 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListUpdateSummaries.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712", + "resourceGroupName": "testrg", + "clusterName": "testcluster", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/ListUpdates.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListUpdates.json new file mode 100644 index 0000000000000..12c6b8f829e7b --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListUpdates.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "b8d594e5-51f3-4c11-9c54-a7771b81c712", + "resourceGroupName": "testrg", + "clusterName": "testcluster", + "api-version": "2024-01-01" + }, + "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/stable/2024-01-01/examples/ListVirtualHardDiskByResourceGroup.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListVirtualHardDiskByResourceGroup.json new file mode 100644 index 0000000000000..ca62dbde7f65c --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListVirtualHardDiskByResourceGroup.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd", + "name": "test-vhd", + "type": "Microsoft.AzureStackHCI/virtualHardDisks", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "diskSizeGB": 32, + "blockSizeBytes": 0, + "logicalSectorBytes": 512, + "physicalSectorBytes": 512, + "provisioningState": "Accepted", + "diskFileFormat": "vhdx", + "hyperVGeneration": "V2", + "dynamic": true + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListVirtualHardDiskBySubscription.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListVirtualHardDiskBySubscription.json new file mode 100644 index 0000000000000..d5e83365afa07 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListVirtualHardDiskBySubscription.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "api-version": "2024-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd", + "name": "test-vhd", + "type": "Microsoft.AzureStackHCI/virtualHardDisks", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "diskSizeGB": 32, + "blockSizeBytes": 0, + "logicalSectorBytes": 512, + "physicalSectorBytes": 512, + "provisioningState": "Accepted", + "diskFileFormat": "vhdx", + "hyperVGeneration": "V2", + "dynamic": true + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListVirtualMachineInstances.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListVirtualMachineInstances.json new file mode 100644 index 0000000000000..551364f86dce5 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ListVirtualMachineInstances.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default", + "name": "default", + "type": "Microsoft.AzureStackHCI/virtualMachineInstances", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "storageProfile": { + "imageReference": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PatchArcSetting.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PatchArcSetting.json new file mode 100644 index 0000000000000..73eca44599966 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "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/stable/2024-01-01/examples/PatchExtension.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PatchExtension.json new file mode 100644 index 0000000000000..dc238d00e943f --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "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/stable/2024-01-01/examples/PostUpdates.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PostUpdates.json new file mode 100644 index 0000000000000..01be281231580 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://foo.com/operationstatus" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutArcSetting.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutArcSetting.json new file mode 100644 index 0000000000000..f381d8b5b4ebf --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "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/stable/2024-01-01/examples/PutDeploymentSettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutDeploymentSettings.json new file mode 100644 index 0000000000000..aa16be943e1ab --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutDeploymentSettings.json @@ -0,0 +1,557 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "deploymentSettingsName": "default", + "api-version": "2024-01-01", + "resource": { + "properties": { + "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" + } + ], + "storageConnectivitySwitchless": 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", + "optionalServices": { + "customLocation": "customLocationName" + } + } + } + ] + } + } + } + }, + "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" + } + ], + "storageConnectivitySwitchless": 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", + "optionalServices": { + "customLocation": "customLocationName" + } + } + } + ] + }, + "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" + } + ], + "storageConnectivitySwitchless": 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", + "optionalServices": { + "customLocation": "customLocationName" + } + } + } + ] + }, + "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/stable/2024-01-01/examples/PutEdgeDevices.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutEdgeDevices.json new file mode 100644 index 0000000000000..743fd0c03b9b1 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutEdgeDevices.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/ArcInstance-rg/providers/Microsoft.HybridCompute/machines/Node-1", + "edgeDeviceName": "default", + "api-version": "2024-01-01", + "resource": { + "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", + "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" + } + } + }, + "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", + "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/stable/2024-01-01/examples/PutExtension.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutExtension.json new file mode 100644 index 0000000000000..2c0b653520328 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01" + }, + "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/stable/2024-01-01/examples/PutGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutGalleryImage.json new file mode 100644 index 0000000000000..067c62641aeda --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutGalleryImage.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "galleryImageName": "test-gallery-image", + "api-version": "2024-01-01", + "galleryImages": { + "location": "West US2", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "imagePath": "C:\\test.vhdx", + "containerId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-storage-container", + "osType": "Linux" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image", + "name": "test-gallery-image", + "type": "Microsoft.AzureStackHCI/galleryImages", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "containerId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-storage-container", + "osType": "Linux", + "cloudInitDataSource": "NoCloud", + "hyperVGeneration": "V2", + "version": { + "properties": { + "storageProfile": { + "osDiskImage": { + "sizeInMB": 30270 + } + } + } + }, + "status": { + "provisioningStatus": { + "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0", + "status": "Succeeded" + }, + "progressPercentage": 100, + "downloadStatus": { + "downloadSizeInMB": 9383 + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-galimg3325", + "name": "test-gallery-image", + "type": "Microsoft.AzureStackHCI/galleryImages", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Succeeded", + "containerId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-storage-container", + "osType": "Linux", + "cloudInitDataSource": "NoCloud", + "hyperVGeneration": "V2", + "version": { + "properties": { + "storageProfile": { + "osDiskImage": { + "sizeInMB": 30270 + } + } + } + }, + "status": { + "provisioningStatus": { + "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0", + "status": "Succeeded" + }, + "progressPercentage": 100, + "downloadStatus": { + "downloadSizeInMB": 9383 + } + } + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutLogicalNetwork.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutLogicalNetwork.json new file mode 100644 index 0000000000000..b88e45b9483c7 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutLogicalNetwork.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "logicalNetworkName": "test-lnet", + "api-version": "2024-01-01", + "logicalNetworks": { + "location": "West US2", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/logicalNetworks/test-lnet", + "name": "test-lnet", + "type": "Microsoft.AzureStackHCI/logicalNetworks", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/logicalNetworks/test-lnet", + "name": "test-lnet", + "type": "Microsoft.AzureStackHCI/logicalNetworks", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutMarketplaceGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutMarketplaceGalleryImage.json new file mode 100644 index 0000000000000..98a9d3dd319cd --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutMarketplaceGalleryImage.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "marketplaceGalleryImageName": "test-marketplace-gallery-image", + "api-version": "2024-01-01", + "name": "test-marketplace-gallery-image", + "marketplaceGalleryImages": { + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "containerId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-storage-container", + "osType": "Windows", + "cloudInitDataSource": "Azure", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "version": { + "name": "1.0.0" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image", + "name": "test-marketplace-gallery-image", + "type": "Microsoft.AzureStackHCI/marketplaceGalleryImages", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "containerId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-storage-container", + "osType": "Windows", + "cloudInitDataSource": "Azure", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "version": { + "name": "1.0.0", + "properties": { + "storageProfile": { + "osDiskImage": { + "sizeInMB": 30270 + } + } + } + }, + "status": { + "provisioningStatus": { + "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0", + "status": "InProgress" + }, + "progressPercentage": 0, + "downloadStatus": { + "downloadSizeInMB": 9383 + } + }, + "provisioningState": "Accepted" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image", + "name": "test-marketplace-gallery-image", + "type": "Microsoft.AzureStackHCI/marketplaceGalleryImages", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "containerId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-storage-container", + "osType": "Windows", + "cloudInitDataSource": "Azure", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "version": { + "name": "1.0.0", + "properties": { + "storageProfile": { + "osDiskImage": { + "sizeInMB": 30270 + } + } + } + }, + "status": { + "provisioningStatus": { + "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0", + "status": "Succeeded" + }, + "progressPercentage": 100, + "downloadStatus": { + "downloadSizeInMB": 9383 + } + }, + "provisioningState": "Creating" + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutNetworkInterface.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutNetworkInterface.json new file mode 100644 index 0000000000000..7ac8bfcb2223c --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutNetworkInterface.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "networkInterfaceName": "test-nic", + "api-version": "2024-01-01", + "networkInterfaces": { + "location": "West US2", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "ipConfigurations": [ + { + "name": "ipconfig-sample", + "properties": { + "subnet": { + "id": "test-lnet" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/networkInterfaces/test-nic", + "name": "test-nic", + "type": "Microsoft.AzureStackHCI/networkInterfaces", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "ipConfigurations": [ + { + "name": "ipconfig-sample", + "properties": { + "subnet": { + "id": "test-lnet" + } + } + } + ], + "provisioningState": "Accepted" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/networkInterfaces/test-nic", + "name": "test-nic", + "type": "Microsoft.AzureStackHCI/networkInterfaces", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "ipConfigurations": [ + { + "name": "ipconfig-sample", + "properties": { + "subnet": { + "id": "test-lnet" + } + } + } + ], + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutSecuritySettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutSecuritySettings.json new file mode 100644 index 0000000000000..e863ceb6df8fe --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutSecuritySettings.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "securitySettingsName": "default", + "api-version": "2024-01-01", + "resource": { + "properties": { + "securedCoreComplianceAssignment": "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", + "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", + "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/stable/2024-01-01/examples/PutStorageContainer.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutStorageContainer.json new file mode 100644 index 0000000000000..a690d5ad5a9c9 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutStorageContainer.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "storageContainerName": "Default_Container", + "api-version": "2024-01-01", + "storageContainers": { + "location": "West US2", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "path": "C:\\container_storage" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-galimg3325", + "name": "Default_Container", + "type": "Microsoft.AzureStackHCI/storageContainers", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "path": "C:\\container_storage" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-galimg3325", + "name": "Default_Container", + "type": "Microsoft.AzureStackHCI/storageContainers", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Succeeded", + "path": "C:\\container_storage" + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutUpdateRuns.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutUpdateRuns.json new file mode 100644 index 0000000000000..6d4c7d42d6ee2 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01", + "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/stable/2024-01-01/examples/PutUpdateSummaries.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutUpdateSummaries.json new file mode 100644 index 0000000000000..689cca9ed144d --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01", + "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/stable/2024-01-01/examples/PutUpdates.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutUpdates.json new file mode 100644 index 0000000000000..104186d742f19 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01", + "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/stable/2024-01-01/examples/PutVirtualHardDisk.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutVirtualHardDisk.json new file mode 100644 index 0000000000000..e1292388e3c76 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutVirtualHardDisk.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "virtualHardDiskName": "test-vhd", + "api-version": "2024-01-01", + "virtualHardDisks": { + "location": "West US2", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "diskSizeGB": 32 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd", + "name": "test-vhd", + "type": "Microsoft.AzureStackHCI/virtualHardDisks", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "diskSizeGB": 32, + "blockSizeBytes": 0, + "logicalSectorBytes": 512, + "physicalSectorBytes": 512, + "provisioningState": "Accepted", + "diskFileFormat": "vhdx", + "hyperVGeneration": "V2", + "dynamic": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd", + "name": "test-vhd", + "type": "Microsoft.AzureStackHCI/virtualHardDisks", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "diskSizeGB": 32, + "blockSizeBytes": 0, + "logicalSectorBytes": 512, + "physicalSectorBytes": 512, + "provisioningState": "Succeeded", + "diskFileFormat": "vhdx", + "hyperVGeneration": "V2", + "dynamic": true + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutVirtualMachineInstanceWithGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutVirtualMachineInstanceWithGalleryImage.json new file mode 100644 index 0000000000000..b4cad14b39409 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutVirtualMachineInstanceWithGalleryImage.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM", + "virtualMachineInstance": { + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin", + "adminPassword": "password" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "securityProfile": { + "enableTPM": true, + "uefiSettings": { + "secureBootEnabled": true + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "securityProfile": { + "enableTPM": true, + "uefiSettings": { + "secureBootEnabled": true + } + }, + "provisioningState": "Accepted" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutVirtualMachineInstanceWithMarketplaceGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutVirtualMachineInstanceWithMarketplaceGalleryImage.json new file mode 100644 index 0000000000000..3463d3f122426 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutVirtualMachineInstanceWithMarketplaceGalleryImage.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM", + "virtualMachineInstance": { + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin", + "adminPassword": "password" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "securityProfile": { + "enableTPM": true, + "uefiSettings": { + "secureBootEnabled": true + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "securityProfile": { + "enableTPM": true, + "uefiSettings": { + "secureBootEnabled": true + } + }, + "provisioningState": "Accepted" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutVirtualMachineInstanceWithOsDisk.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutVirtualMachineInstanceWithOsDisk.json new file mode 100644 index 0000000000000..07bf9d79540bd --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutVirtualMachineInstanceWithOsDisk.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM", + "virtualMachineInstance": { + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "osDisk": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "securityProfile": { + "enableTPM": true, + "uefiSettings": { + "secureBootEnabled": true + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "osDisk": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "securityProfile": { + "enableTPM": true, + "uefiSettings": { + "secureBootEnabled": true + } + }, + "provisioningState": "Accepted" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "osDisk": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutVirtualMachineInstanceWithVMConfigAgent.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutVirtualMachineInstanceWithVMConfigAgent.json new file mode 100644 index 0000000000000..1b67e6bb9d345 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/PutVirtualMachineInstanceWithVMConfigAgent.json @@ -0,0 +1,144 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM", + "virtualMachineInstance": { + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin", + "adminPassword": "password", + "windowsConfiguration": { + "provisionVMConfigAgent": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "securityProfile": { + "enableTPM": true, + "uefiSettings": { + "secureBootEnabled": true + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "securityProfile": { + "enableTPM": true, + "uefiSettings": { + "secureBootEnabled": true + } + }, + "provisioningState": "Accepted", + "instanceView": { + "vmAgent": { + "vmConfigAgentVersion": "1.0.0", + "statuses": [ + { + "code": "Ok", + "level": "Info", + "displayStatus": "Ok", + "message": "The agent is healthy", + "time": "2009-06-15T13:45:30" + } + ] + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "provisioningState": "Succeeded", + "instanceView": { + "vmAgent": { + "vmConfigAgentVersion": "1.0.0", + "statuses": [ + { + "code": "Ok", + "level": "Info", + "displayStatus": "Ok", + "message": "The agent is healthy", + "time": "2009-06-15T13:45:30" + } + ] + } + } + } + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/RestartVirtualMachineInstance.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/RestartVirtualMachineInstance.json new file mode 100644 index 0000000000000..6dfd35e41766c --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/RestartVirtualMachineInstance.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default" + }, + "responses": { + "200": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + }, + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "securityProfile": { + "enableTPM": true, + "uefiSettings": { + "secureBootEnabled": true + } + }, + "provisioningState": "Accepted" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/StartVirtualMachineInstance.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/StartVirtualMachineInstance.json new file mode 100644 index 0000000000000..6dfd35e41766c --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/StartVirtualMachineInstance.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default" + }, + "responses": { + "200": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + }, + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "securityProfile": { + "enableTPM": true, + "uefiSettings": { + "secureBootEnabled": true + } + }, + "provisioningState": "Accepted" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/StopVirtualMachineInstance.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/StopVirtualMachineInstance.json new file mode 100644 index 0000000000000..6dfd35e41766c --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/StopVirtualMachineInstance.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2024-01-01", + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default" + }, + "responses": { + "200": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + }, + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default", + "extendedLocation": { + "type": "CustomLocation", + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location" + }, + "properties": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image" + }, + "vmConfigStoragePathId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-container" + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + }, + "securityProfile": { + "enableTPM": true, + "uefiSettings": { + "secureBootEnabled": true + } + }, + "provisioningState": "Accepted" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateCluster.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateCluster.json new file mode 100644 index 0000000000000..02ebb3dc8286b --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateCluster.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "api-version": "2024-01-01", + "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/stable/2024-01-01/examples/UpdateGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateGalleryImage.json new file mode 100644 index 0000000000000..a7269f4224f88 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateGalleryImage.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "galleryImageName": "test-gallery-image", + "api-version": "2024-01-01", + "galleryImages": { + "tags": { + "additionalProperties": "sample" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/galleryImages/test-galimg3325", + "name": "test-gallery-image", + "type": "Microsoft.AzureStackHCI/galleryImages", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "tags": { + "additionalProperties": "sample" + }, + "properties": { + "provisioningState": "Accepted", + "containerId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-storage-container", + "osType": "Linux", + "cloudInitDataSource": "NoCloud", + "hyperVGeneration": "V2", + "version": { + "properties": { + "storageProfile": { + "osDiskImage": { + "sizeInMB": 30270 + } + } + } + }, + "status": { + "provisioningStatus": { + "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0", + "status": "Succeeded" + }, + "progressPercentage": 100, + "downloadStatus": { + "downloadSizeInMB": 9383 + } + } + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateLogicalNetwork.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateLogicalNetwork.json new file mode 100644 index 0000000000000..043a487eb1d0f --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateLogicalNetwork.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "logicalNetworkName": "test-lnet", + "api-version": "2024-01-01", + "logicalNetworks": { + "tags": { + "additionalProperties": "sample" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/logicalNetworks/test-lnet", + "name": "test-lnet", + "type": "Microsoft.AzureStackHCI/logicalNetworks", + "location": "West US2", + "tags": { + "additionalProperties": "sample" + }, + "extendedLocation": { + "name": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateMarketplaceGalleryImage.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateMarketplaceGalleryImage.json new file mode 100644 index 0000000000000..c8b4f438d33c5 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateMarketplaceGalleryImage.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "marketplaceGalleryImageName": "test-marketplce-gallery-image", + "api-version": "2024-01-01", + "marketplaceGalleryImages": { + "tags": { + "additionalProperties": "sample" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages/test-marketplace-gallery-image", + "name": "test-marketplace-gallery-image", + "type": "Microsoft.AzureStackHCI/marketplaceGalleryImages", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "tags": { + "additionalProperties": "sample" + }, + "properties": { + "containerId": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-storage-container", + "osType": "Windows", + "cloudInitDataSource": "Azure", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "version": { + "name": "1.0.0", + "properties": { + "storageProfile": { + "osDiskImage": { + "sizeInMB": 30270 + } + } + } + }, + "status": { + "provisioningStatus": { + "operationId": "79cfc696-44f5-4a68-a620-21850f7e9fb0", + "status": "InProgress" + }, + "progressPercentage": 0, + "downloadStatus": { + "downloadSizeInMB": 9383 + } + }, + "provisioningState": "Accepted" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateNetworkInterface.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateNetworkInterface.json new file mode 100644 index 0000000000000..e11624d58d561 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateNetworkInterface.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "networkInterfaceName": "test-nic", + "api-version": "2024-01-01", + "networkInterfaces": { + "tags": { + "additionalProperties": "sample" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/networkInterfaces/test-nic", + "name": "test-nic", + "type": "Microsoft.AzureStackHCI/networkInterfaces", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "ipConfigurations": [ + { + "name": "ipconfig-sample", + "properties": { + "subnet": { + "id": "test-lnet" + } + } + } + ], + "provisioningState": "Accepted" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateStorageContainer.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateStorageContainer.json new file mode 100644 index 0000000000000..3d676ee3ed263 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateStorageContainer.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "storageContainerName": "Default_Container", + "api-version": "2024-01-01", + "storageContainers": { + "tags": { + "additionalProperties": "sample" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/storageContainers/test-galimg3325", + "name": "Default_Container", + "type": "Microsoft.AzureStackHCI/storageContainers", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "tags": { + "additionalProperties": "sample" + }, + "properties": { + "provisioningState": "Accepted", + "path": "C:\\container_storage" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateVirtualHardDisk.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateVirtualHardDisk.json new file mode 100644 index 0000000000000..4e6a3b9b093e2 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateVirtualHardDisk.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "virtualHardDiskName": "test-vhd", + "api-version": "2024-01-01", + "virtualHardDisks": { + "tags": { + "additionalProperties": "sample" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd", + "name": "test-vhd", + "type": "Microsoft.AzureStackHCI/virtualHardDisks", + "location": "West US2", + "extendedLocation": { + "name": "/subscriptions/a95612cb-f1fa-4daa-a4fd-272844fa512c/resourceGroups/dogfoodarc/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "tags": { + "additionalProperties": "sample" + }, + "properties": { + "diskSizeGB": 32, + "blockSizeBytes": 0, + "logicalSectorBytes": 512, + "physicalSectorBytes": 512, + "provisioningState": "Accepted", + "diskFileFormat": "vhdx", + "hyperVGeneration": "V2", + "dynamic": true + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateVirtualMachineInstance.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateVirtualMachineInstance.json new file mode 100644 index 0000000000000..dd82018c630c3 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UpdateVirtualMachineInstance.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "resourceUri": "subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM", + "api-version": "2024-01-01", + "virtualMachineInstance": { + "properties": { + "storageProfile": { + "dataDisks": [ + { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/Microsoft.HybridCompute/machines/DemoVM/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default", + "name": "default", + "type": "Microsoft.AzureStackHCI/virtualMachineInstances", + "extendedLocation": { + "name": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.ExtendedLocation/customLocations/dogfood-location", + "type": "CustomLocation" + }, + "properties": { + "provisioningState": "Accepted", + "storageProfile": { + "imageReference": { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/galleryImages/test-gallery-image" + }, + "dataDisks": [ + { + "id": "/subscriptions/fd3c3665-1729-4b7b-9a38-238e83b0f98b/resourceGroups/testrg/providers/Microsoft.AzureStackHCI/virtualHardDisks/test-vhd" + } + ] + }, + "hardwareProfile": { + "vmSize": "Default" + }, + "osProfile": { + "computerName": "luamaster", + "adminUsername": "localadmin" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "test-nic" + } + ] + } + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "http://azure.async.operation/status" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UploadCertificate.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UploadCertificate.json new file mode 100644 index 0000000000000..f85ad18bdd773 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/UploadCertificate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "fd3c3665-1729-4b7b-9a38-238e83b0f98b", + "resourceGroupName": "test-rg", + "clusterName": "myCluster", + "api-version": "2024-01-01", + "uploadCertificateRequest": { + "properties": { + "certificates": [ + "base64cert", + "base64cert" + ] + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://foo.com/operationStatuses" + } + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ValidateEdgeDevices.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/examples/ValidateEdgeDevices.json new file mode 100644 index 0000000000000..b322df36c3f12 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/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-01-01", + "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/stable/2024-01-01/extensions.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/extensions.json new file mode 100644 index 0000000000000..39730654d6d21 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/extensions.json @@ -0,0 +1,707 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-01", + "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/stable/2024-01-01/galleryImages.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/galleryImages.json new file mode 100644 index 0000000000000..bd99490268c5a --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/galleryImages.json @@ -0,0 +1,597 @@ +{ + "swagger": "2.0", + "info": { + "title": "AzureStackHCI", + "description": "The Microsoft.AzureStackHCI Rest API spec.", + "version": "2024-01-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.AzureStackHCI/galleryImages/{galleryImageName}": { + "get": { + "operationId": "GalleryImages_Get", + "description": "Gets a gallery image", + "x-ms-examples": { + "GetGalleryImage": { + "$ref": "./examples/GetGalleryImage.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/GalleryImageNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImages" + } + } + } + }, + "put": { + "operationId": "GalleryImages_CreateOrUpdate", + "description": "The operation to create or update a gallery image. Please note some properties can be set only during gallery image creation.", + "x-ms-examples": { + "PutGalleryImage": { + "$ref": "./examples/PutGalleryImage.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/GalleryImageNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "galleryImages", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryImages" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Updated", + "schema": { + "$ref": "#/definitions/GalleryImages" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/GalleryImages" + } + } + } + }, + "delete": { + "operationId": "GalleryImages_Delete", + "description": "The operation to delete a gallery image.", + "x-ms-examples": { + "DeleteGalleryImage": { + "$ref": "./examples/DeleteGalleryImage.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/GalleryImageNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "No content" + } + } + }, + "patch": { + "operationId": "GalleryImages_Update", + "description": "The operation to update a gallery image.", + "x-ms-examples": { + "UpdateGalleryImage": { + "$ref": "./examples/UpdateGalleryImage.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/GalleryImageNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "galleryImages", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryImagesUpdateRequest" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImages" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/galleryImages": { + "get": { + "operationId": "GalleryImages_List", + "description": "Lists all of the gallery images in the specified resource group. Use the nextLink property in the response to get the next page of gallery images.", + "x-ms-examples": { + "ListGalleryImageByResourceGroup": { + "$ref": "./examples/ListGalleryImageByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImagesListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AzureStackHCI/galleryImages": { + "get": { + "operationId": "GalleryImages_ListAll", + "description": "Lists all of the gallery images in the specified subscription. Use the nextLink property in the response to get the next page of gallery images.", + "x-ms-examples": { + "ListGalleryImageBySubscription": { + "$ref": "./examples/ListGalleryImageBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImagesListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "GalleryImageProperties": { + "type": "object", + "x-ms-client-flatten": true, + "properties": { + "containerId": { + "type": "string", + "format": "arm-id", + "x-ms-arm-id-details": { + "allowedResources": [ + { + "type": "Microsoft.AzureStackHCI/storageContainers" + } + ] + }, + "description": "Storage ContainerID of the storage container to be used for gallery image" + }, + "imagePath": { + "type": "string", + "x-ms-secret": true, + "description": "location of the image the gallery image should be created from" + }, + "osType": { + "type": "string", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + }, + "description": "Operating system type that the gallery image uses [Windows, Linux]" + }, + "cloudInitDataSource": { + "type": "string", + "description": "Datasource for the gallery image when provisioning with cloud-init [NoCloud, Azure]", + "enum": [ + "NoCloud", + "Azure" + ], + "x-ms-enum": { + "name": "CloudInitDataSource", + "modelAsString": true + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine [V1, V2]", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "identifier": { + "$ref": "#/definitions/GalleryImageIdentifier" + }, + "version": { + "$ref": "#/definitions/GalleryImageVersion" + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the gallery image.", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "InProgress", + "Accepted", + "Deleting", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningStateEnum", + "modelAsString": true + } + }, + "status": { + "$ref": "#/definitions/GalleryImageStatus" + } + }, + "required": [ + "osType" + ], + "description": "Properties under the gallery image resource" + }, + "GalleryImageStatus": { + "type": "object", + "x-ms-client-flatten": true, + "readOnly": true, + "properties": { + "errorCode": { + "type": "string", + "description": "GalleryImage provisioning error code" + }, + "errorMessage": { + "type": "string", + "description": "Descriptive error message" + }, + "provisioningStatus": { + "type": "object", + "properties": { + "operationId": { + "type": "string", + "description": "The ID of the operation performed on the gallery image" + }, + "status": { + "type": "string", + "description": "The status of the operation performed on the gallery image [Succeeded, Failed, InProgress]", + "enum": [ + "Succeeded", + "Failed", + "InProgress" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + } + } + }, + "downloadStatus": { + "type": "object", + "properties": { + "downloadSizeInMB": { + "type": "integer", + "format": "int64", + "description": "The downloaded sized of the image in MB" + } + }, + "description": "The download status of the gallery image" + }, + "progressPercentage": { + "type": "integer", + "format": "int64", + "description": "The progress of the operation in percentage" + } + }, + "description": "The observed state of gallery images" + }, + "GalleryImageIdentifier": { + "type": "object", + "properties": { + "publisher": { + "type": "string", + "description": "The name of the gallery image definition publisher." + }, + "offer": { + "type": "string", + "description": "The name of the gallery image definition offer." + }, + "sku": { + "type": "string", + "description": "The name of the gallery image definition SKU." + } + }, + "required": [ + "publisher", + "offer", + "sku" + ], + "description": "This is the gallery image definition identifier." + }, + "GalleryImageVersion": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "This is the version of the gallery image." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryImageVersionProperties" + } + }, + "description": "Specifies information about the gallery image version that you want to create or update." + }, + "GalleryImageVersionProperties": { + "type": "object", + "properties": { + "storageProfile": { + "$ref": "#/definitions/GalleryImageVersionStorageProfile" + } + }, + "required": [ + "storageProfile" + ], + "description": "Describes the properties of a gallery image version." + }, + "GalleryImageVersionStorageProfile": { + "type": "object", + "properties": { + "osDiskImage": { + "$ref": "#/definitions/GalleryOSDiskImage" + } + }, + "description": "This is the storage profile of a Gallery Image Version." + }, + "GalleryOSDiskImage": { + "allOf": [ + { + "$ref": "#/definitions/GalleryDiskImage" + } + ], + "description": "This is the OS disk image." + }, + "GalleryDiskImage": { + "type": "object", + "properties": { + "sizeInMB": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "This property indicates the size of the VHD to be created." + } + }, + "description": "This is the disk image base class." + }, + "GalleryImages": { + "type": "object", + "description": "The gallery images resource definition.", + "x-ms-azure-resource": true, + "x-ms-client-flatten": true, + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryImageProperties" + }, + "extendedLocation": { + "$ref": "./common.json#/definitions/ExtendedLocation", + "description": "The extendedLocation of the resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + } + ] + }, + "GalleryImagesUpdateRequest": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "The gallery images resource patch definition." + }, + "GalleryImagesListResult": { + "type": "object", + "description": "List of gallery images.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GalleryImages" + } + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results.", + "readOnly": true + } + } + } + }, + "parameters": { + "GalleryImageNameParameter": { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[a-zA-Z0-9]$", + "x-ms-parameter-location": "method", + "maxLength": 80, + "minLength": 1, + "description": "Name of the gallery image" + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/logicalNetworks.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/logicalNetworks.json new file mode 100644 index 0000000000000..5a9eaa1b5d23d --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/logicalNetworks.json @@ -0,0 +1,655 @@ +{ + "swagger": "2.0", + "info": { + "title": "AzureStackHCI", + "description": "The Microsoft.AzureStackHCI Rest API spec.", + "version": "2024-01-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.AzureStackHCI/logicalNetworks/{logicalNetworkName}": { + "get": { + "operationId": "LogicalNetworks_Get", + "x-ms-examples": { + "GetLogicalNetwork": { + "$ref": "./examples/GetLogicalNetwork.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/LogicalNetworkNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogicalNetworks" + } + } + } + }, + "put": { + "operationId": "LogicalNetworks_CreateOrUpdate", + "description": "The operation to create or update a logical network. Please note some properties can be set only during logical network creation.", + "x-ms-examples": { + "PutLogicalNetwork": { + "$ref": "./examples/PutLogicalNetwork.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/LogicalNetworkNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "logicalNetworks", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LogicalNetworks" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Updated", + "schema": { + "$ref": "#/definitions/LogicalNetworks" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/LogicalNetworks" + } + } + } + }, + "delete": { + "operationId": "LogicalNetworks_Delete", + "description": "The operation to delete a logical network.", + "x-ms-examples": { + "DeleteLogicalNetwork": { + "$ref": "./examples/DeleteLogicalNetwork.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/LogicalNetworkNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "No content" + } + } + }, + "patch": { + "operationId": "LogicalNetworks_Update", + "description": "The operation to update a logical network.", + "x-ms-examples": { + "UpdateLogicalNetwork": { + "$ref": "./examples/UpdateLogicalNetwork.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/LogicalNetworkNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "logicalNetworks", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LogicalNetworksUpdateRequest" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogicalNetworks" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/logicalNetworks": { + "get": { + "operationId": "LogicalNetworks_List", + "description": "Lists all of the logical networks in the specified resource group. Use the nextLink property in the response to get the next page of logical networks.", + "x-ms-examples": { + "ListLogicalNetworkByResourceGroup": { + "$ref": "./examples/ListLogicalNetworkByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogicalNetworksListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AzureStackHCI/logicalNetworks": { + "get": { + "operationId": "LogicalNetworks_ListAll", + "description": "Lists all of the logical networks in the specified subscription. Use the nextLink property in the response to get the next page of logical networks.", + "x-ms-examples": { + "ListLogicalNetworkBySubscription": { + "$ref": "./examples/ListLogicalNetworkBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogicalNetworksListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "LogicalNetworkProperties": { + "type": "object", + "x-ms-client-flatten": true, + "properties": { + "dhcpOptions": { + "type": "object", + "description": "DhcpOptions contains an array of DNS servers available to VMs deployed in the logical network. Standard DHCP option for a subnet overrides logical network DHCP options.", + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of DNS servers IP addresses." + } + } + }, + "subnets": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "Subnet - list of subnets under the logical network", + "x-ms-identifiers": [] + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the logical network.", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "InProgress", + "Accepted", + "Deleting", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningStateEnum", + "modelAsString": true + } + }, + "vmSwitchName": { + "type": "string", + "description": "name of the network switch to be used for VMs" + }, + "status": { + "$ref": "#/definitions/LogicalNetworkStatus" + } + }, + "description": "Properties under the logical network resource" + }, + "LogicalNetworkStatus": { + "type": "object", + "x-ms-client-flatten": true, + "readOnly": true, + "properties": { + "errorCode": { + "type": "string", + "description": "LogicalNetwork provisioning error code" + }, + "errorMessage": { + "type": "string", + "description": "Descriptive error message" + }, + "provisioningStatus": { + "type": "object", + "properties": { + "operationId": { + "type": "string", + "description": "The ID of the operation performed on the logical network" + }, + "status": { + "type": "string", + "description": "The status of the operation performed on the logical network [Succeeded, Failed, InProgress]", + "enum": [ + "Succeeded", + "Failed", + "InProgress" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + } + } + } + }, + "description": "The observed state of logical networks" + }, + "IPPoolInfo": { + "type": "object", + "properties": { + "used": { + "type": "string", + "readOnly": true, + "description": "Number of IP addresses allocated from the IP Pool" + }, + "available": { + "type": "string", + "readOnly": true, + "description": "Number of IP addresses available in the IP Pool" + } + } + }, + "IPPool": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the IP-Pool" + }, + "ipPoolType": { + "type": "string", + "enum": [ + "vm", + "vippool" + ], + "x-ms-enum": { + "name": "IPPoolTypeEnum", + "modelAsString": false + }, + "description": "Type of the IP Pool [vm, vippool]" + }, + "start": { + "type": "string", + "description": "Start of the IP address pool" + }, + "end": { + "type": "string", + "description": "End of the IP address pool" + }, + "info": { + "$ref": "#/definitions/IPPoolInfo" + } + } + }, + "RoutePropertiesFormat": { + "type": "object", + "properties": { + "addressPrefix": { + "type": "string", + "description": "The destination CIDR to which the route applies." + }, + "nextHopIpAddress": { + "type": "string", + "description": "The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance." + } + }, + "description": "RoutePropertiesFormat - Route resource." + }, + "Route": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoutePropertiesFormat", + "description": "Properties of the route." + }, + "name": { + "type": "string", + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$", + "description": "Name - name of the subnet" + } + }, + "description": "Route - Route resource." + }, + "RouteTablePropertiesFormat": { + "type": "object", + "properties": { + "routes": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "Collection of routes contained within a route table.", + "x-ms-identifiers": [] + } + }, + "description": "RouteTablePropertiesFormat - Route Table resource." + }, + "RouteTable": { + "type": "object", + "properties": { + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteTablePropertiesFormat", + "description": "Properties of the route table." + } + }, + "description": "Route table resource." + }, + "SubnetPropertiesFormat": { + "type": "object", + "properties": { + "addressPrefix": { + "type": "string", + "description": "The address prefix for the subnet: Cidr for this subnet - IPv4, IPv6." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of address prefixes for the subnet." + }, + "ipAllocationMethod": { + "type": "string", + "description": "IPAllocationMethod - The IP address allocation method. Possible values include: 'Static', 'Dynamic'", + "enum": [ + "Dynamic", + "Static" + ], + "x-ms-enum": { + "name": "IpAllocationMethodEnum", + "modelAsString": true + } + }, + "ipConfigurationReferences": { + "type": "array", + "items": { + "type": "object", + "properties": { + "ID": { + "type": "string", + "description": "IPConfigurationID" + } + }, + "description": "IPConfigurationReference - Describes a IPConfiguration under the virtual network" + }, + "x-ms-identifiers": [], + "description": "IPConfigurationReferences - list of IPConfigurationReferences" + }, + "routeTable": { + "type": "object", + "$ref": "#/definitions/RouteTable" + }, + "ipPools": { + "type": "array", + "description": "network associated pool of IP Addresses", + "items": { + "$ref": "#/definitions/IPPool" + }, + "x-ms-identifiers": [] + }, + "vlan": { + "type": "integer", + "format": "int32", + "description": "Vlan to use for the subnet" + } + }, + "description": "Properties of the subnet." + }, + "Subnet": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubnetPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$", + "description": "Name - The name of the resource that is unique within a resource group. This name can be used to access the resource." + } + } + }, + "LogicalNetworks": { + "type": "object", + "description": "The logical network resource definition.", + "x-ms-azure-resource": true, + "x-ms-client-flatten": true, + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LogicalNetworkProperties" + }, + "extendedLocation": { + "$ref": "./common.json#/definitions/ExtendedLocation", + "description": "The extendedLocation of the resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + } + ] + }, + "LogicalNetworksUpdateRequest": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "The logical network resource patch definition." + }, + "LogicalNetworksListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LogicalNetworks" + } + }, + "nextLink": { + "type": "string" + } + } + } + }, + "parameters": { + "LogicalNetworkNameParameter": { + "name": "logicalNetworkName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,62}[_a-zA-Z0-9]$", + "x-ms-parameter-location": "method", + "maxLength": 64, + "minLength": 2, + "description": "Name of the logical network" + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/marketplaceGalleryImages.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/marketplaceGalleryImages.json new file mode 100644 index 0000000000000..71b413154691d --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/marketplaceGalleryImages.json @@ -0,0 +1,589 @@ +{ + "swagger": "2.0", + "info": { + "title": "AzureStackHCI", + "description": "The Microsoft.AzureStackHCI Rest API spec.", + "version": "2024-01-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.AzureStackHCI/marketplaceGalleryImages/{marketplaceGalleryImageName}": { + "get": { + "operationId": "MarketplaceGalleryImages_Get", + "description": "Gets a marketplace gallery image", + "x-ms-examples": { + "GetMarketplaceGalleryImage": { + "$ref": "./examples/GetMarketplaceGalleryImage.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MarketplaceGalleryImageNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MarketplaceGalleryImages" + } + } + } + }, + "put": { + "operationId": "MarketplaceGalleryImages_CreateOrUpdate", + "description": "The operation to create or update a marketplace gallery image. Please note some properties can be set only during marketplace gallery image creation.", + "x-ms-examples": { + "PutMarketplaceGalleryImage": { + "$ref": "./examples/PutMarketplaceGalleryImage.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MarketplaceGalleryImageNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "marketplaceGalleryImages", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MarketplaceGalleryImages" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Updates the marketplace gallery image resource.", + "schema": { + "$ref": "#/definitions/MarketplaceGalleryImages" + } + }, + "201": { + "description": "Creates the marketplace gallery image resource.", + "schema": { + "$ref": "#/definitions/MarketplaceGalleryImages" + } + } + } + }, + "delete": { + "operationId": "MarketplaceGalleryImages_Delete", + "description": "The operation to delete a marketplace gallery image.", + "x-ms-examples": { + "DeleteMarketplaceGalleryImage": { + "$ref": "./examples/DeleteMarketplaceGalleryImage.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MarketplaceGalleryImageNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "No content" + } + } + }, + "patch": { + "operationId": "MarketplaceGalleryImages_Update", + "description": "The operation to update a marketplace gallery image.", + "x-ms-examples": { + "UpdateMarketplaceGalleryImage": { + "$ref": "./examples/UpdateMarketplaceGalleryImage.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/MarketplaceGalleryImageNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "marketplaceGalleryImages", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MarketplaceGalleryImagesUpdateRequest" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MarketplaceGalleryImages" + } + }, + "202": { + "description": "Updates the marketplace gallery image resource.", + "headers": { + "Location": { + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages": { + "get": { + "operationId": "MarketplaceGalleryImages_List", + "description": "Lists all of the marketplace gallery images in the specified resource group. Use the nextLink property in the response to get the next page of marketplace gallery images.", + "x-ms-examples": { + "ListMarketplaceGalleryImageByResourceGroup": { + "$ref": "./examples/ListMarketplaceGalleryImageByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Lists all marketplace gallery images under the resource group.", + "schema": { + "$ref": "#/definitions/MarketplaceGalleryImagesListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AzureStackHCI/marketplaceGalleryImages": { + "get": { + "operationId": "MarketplaceGalleryImages_ListAll", + "description": "Lists all of the marketplace gallery images in the specified subscription. Use the nextLink property in the response to get the next page of marketplace gallery images.", + "x-ms-examples": { + "ListMarketplaceGalleryImageBySubscription": { + "$ref": "./examples/ListMarketplaceGalleryImageBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Lists all marketplace gallery images under the subscription.", + "schema": { + "$ref": "#/definitions/MarketplaceGalleryImagesListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "MarketplaceGalleryImageProperties": { + "type": "object", + "x-ms-client-flatten": true, + "properties": { + "containerId": { + "type": "string", + "format": "arm-id", + "x-ms-arm-id-details": { + "allowedResources": [ + { + "type": "Microsoft.AzureStackHCI/storageContainers" + } + ] + }, + "description": "Storage ContainerID of the storage container to be used for marketplace gallery image" + }, + "osType": { + "type": "string", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + }, + "description": "Operating system type that the gallery image uses [Windows, Linux]" + }, + "cloudInitDataSource": { + "type": "string", + "description": "Datasource for the gallery image when provisioning with cloud-init [NoCloud, Azure]", + "enum": [ + "NoCloud", + "Azure" + ], + "x-ms-enum": { + "name": "CloudInitDataSource", + "modelAsString": true + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine [V1, V2]", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "identifier": { + "$ref": "#/definitions/GalleryImageIdentifier" + }, + "version": { + "$ref": "#/definitions/GalleryImageVersion" + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the marketplace gallery image.", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "InProgress", + "Accepted", + "Deleting", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningStateEnum", + "modelAsString": true + } + }, + "status": { + "$ref": "#/definitions/MarketplaceGalleryImageStatus" + } + }, + "required": [ + "osType" + ], + "description": "Properties under the marketplace gallery image resource" + }, + "MarketplaceGalleryImageStatus": { + "type": "object", + "x-ms-client-flatten": true, + "readOnly": true, + "properties": { + "errorCode": { + "type": "string", + "description": "MarketplaceGalleryImage provisioning error code" + }, + "errorMessage": { + "type": "string", + "description": "Descriptive error message" + }, + "provisioningStatus": { + "type": "object", + "properties": { + "operationId": { + "type": "string", + "description": "The ID of the operation performed on the gallery image" + }, + "status": { + "type": "string", + "description": "The status of the operation performed on the gallery image [Succeeded, Failed, InProgress]", + "enum": [ + "Succeeded", + "Failed", + "InProgress" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + } + } + }, + "downloadStatus": { + "type": "object", + "properties": { + "downloadSizeInMB": { + "type": "integer", + "format": "int64", + "description": "The downloaded sized of the image in MB" + } + }, + "description": "The download status of the gallery image" + }, + "progressPercentage": { + "type": "integer", + "format": "int64", + "description": "The progress of the operation in percentage" + } + }, + "description": "The observed state of marketplace gallery images" + }, + "GalleryImageIdentifier": { + "type": "object", + "properties": { + "publisher": { + "type": "string", + "description": "The name of the gallery image definition publisher." + }, + "offer": { + "type": "string", + "description": "The name of the gallery image definition offer." + }, + "sku": { + "type": "string", + "description": "The name of the gallery image definition SKU." + } + }, + "required": [ + "publisher", + "offer", + "sku" + ], + "description": "This is the gallery image definition identifier." + }, + "GalleryImageVersion": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "This is the version of the gallery image." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryImageVersionProperties" + } + }, + "description": "Specifies information about the gallery image version that you want to create or update." + }, + "GalleryImageVersionProperties": { + "type": "object", + "properties": { + "storageProfile": { + "$ref": "#/definitions/GalleryImageVersionStorageProfile" + } + }, + "required": [ + "storageProfile" + ], + "description": "Describes the properties of a gallery image version." + }, + "GalleryImageVersionStorageProfile": { + "type": "object", + "properties": { + "osDiskImage": { + "$ref": "#/definitions/GalleryOSDiskImage" + } + }, + "description": "This is the storage profile of a Gallery Image Version." + }, + "GalleryOSDiskImage": { + "allOf": [ + { + "$ref": "#/definitions/GalleryDiskImage" + } + ], + "description": "This is the OS disk image." + }, + "GalleryDiskImage": { + "type": "object", + "properties": { + "sizeInMB": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "This property indicates the size of the VHD to be created." + } + }, + "description": "This is the disk image base class." + }, + "MarketplaceGalleryImages": { + "type": "object", + "description": "The marketplace gallery image resource definition.", + "x-ms-azure-resource": true, + "x-ms-client-flatten": true, + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/MarketplaceGalleryImageProperties" + }, + "extendedLocation": { + "$ref": "./common.json#/definitions/ExtendedLocation", + "description": "The extendedLocation of the resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + } + ] + }, + "MarketplaceGalleryImagesUpdateRequest": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "The marketplace gallery image resource patch definition." + }, + "MarketplaceGalleryImagesListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/MarketplaceGalleryImages" + } + }, + "nextLink": { + "type": "string" + } + } + } + }, + "parameters": { + "MarketplaceGalleryImageNameParameter": { + "name": "marketplaceGalleryImageName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[a-zA-Z0-9]$", + "x-ms-parameter-location": "method", + "maxLength": 80, + "minLength": 1, + "description": "Name of the marketplace gallery image" + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/networkInterfaces.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/networkInterfaces.json new file mode 100644 index 0000000000000..9dcf2e1a755b3 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/networkInterfaces.json @@ -0,0 +1,512 @@ +{ + "swagger": "2.0", + "info": { + "title": "AzureStackHCI", + "description": "The Microsoft.AzureStackHCI Rest API spec.", + "version": "2024-01-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.AzureStackHCI/networkInterfaces/{networkInterfaceName}": { + "get": { + "operationId": "NetworkInterfaces_Get", + "description": "Gets a network interface", + "x-ms-examples": { + "GetNetworkInterface": { + "$ref": "./examples/GetNetworkInterface.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkInterfaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkInterfaces" + } + } + } + }, + "put": { + "operationId": "NetworkInterfaces_CreateOrUpdate", + "description": "The operation to create or update a network interface. Please note some properties can be set only during network interface creation.", + "x-ms-examples": { + "PutNetworkInterface": { + "$ref": "./examples/PutNetworkInterface.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkInterfaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "networkInterfaces", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterfaces" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Updated", + "schema": { + "$ref": "#/definitions/NetworkInterfaces" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/NetworkInterfaces" + } + } + } + }, + "delete": { + "operationId": "NetworkInterfaces_Delete", + "description": "The operation to delete a network interface.", + "x-ms-examples": { + "DeleteNetworkInterface": { + "$ref": "./examples/DeleteNetworkInterface.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkInterfaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "No content" + } + } + }, + "patch": { + "operationId": "NetworkInterfaces_Update", + "description": "The operation to update a network interface.", + "x-ms-examples": { + "UpdateNetworkInterface": { + "$ref": "./examples/UpdateNetworkInterface.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/NetworkInterfaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "networkInterfaces", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterfacesUpdateRequest" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkInterfaces" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/networkInterfaces": { + "get": { + "operationId": "NetworkInterfaces_List", + "description": "Lists all of the network interfaces in the specified resource group. Use the nextLink property in the response to get the next page of network interfaces.", + "x-ms-examples": { + "ListNetworkInterfaceByResourceGroup": { + "$ref": "./examples/ListNetworkInterfaceByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkInterfacesListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AzureStackHCI/networkInterfaces": { + "get": { + "operationId": "NetworkInterfaces_ListAll", + "description": "Lists all of the network interfaces in the specified subscription. Use the nextLink property in the response to get the next page of network interfaces.", + "x-ms-examples": { + "ListNetworkInterfaceBySubscription": { + "$ref": "./examples/ListNetworkInterfaceBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NetworkInterfacesListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "InterfaceDNSSettings": { + "type": "object", + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of DNS server IP Addresses for the interface" + } + } + }, + "NetworkInterfaceProperties": { + "type": "object", + "x-ms-client-flatten": true, + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfiguration" + }, + "description": "IPConfigurations - A list of IPConfigurations of the network interface.", + "x-ms-identifiers": [] + }, + "macAddress": { + "type": "string", + "description": "MacAddress - The MAC address of the network interface." + }, + "dnsSettings": { + "$ref": "#/definitions/InterfaceDNSSettings", + "description": "DNS Settings for the interface" + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the network interface.", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "InProgress", + "Accepted", + "Deleting", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningStateEnum", + "modelAsString": true + } + }, + "status": { + "$ref": "#/definitions/NetworkInterfaceStatus" + } + }, + "description": "Properties under the network interface resource" + }, + "NetworkInterfaceStatus": { + "type": "object", + "x-ms-client-flatten": true, + "readOnly": true, + "properties": { + "errorCode": { + "type": "string", + "description": "NetworkInterface provisioning error code" + }, + "errorMessage": { + "type": "string", + "description": "Descriptive error message" + }, + "provisioningStatus": { + "type": "object", + "properties": { + "operationId": { + "type": "string", + "description": "The ID of the operation performed on the network interface" + }, + "status": { + "type": "string", + "description": "The status of the operation performed on the network interface [Succeeded, Failed, InProgress]", + "enum": [ + "Succeeded", + "Failed", + "InProgress" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + } + } + } + }, + "description": "The observed state of network interfaces" + }, + "IPConfiguration": { + "type": "object", + "x-ms-client-flatten": true, + "properties": { + "name": { + "type": "string", + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$", + "x-ms-mutability": [ + "create", + "read" + ], + "description": "Name - The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "properties": { + "type": "object", + "properties": { + "gateway": { + "type": "string", + "readOnly": true, + "description": "Gateway for network interface" + }, + "prefixLength": { + "type": "string", + "readOnly": true, + "description": "prefixLength for network interface" + }, + "privateIPAddress": { + "type": "string", + "description": "PrivateIPAddress - Private IP address of the IP configuration." + }, + "subnet": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "ID - The ARM resource id in the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/..." + } + }, + "description": "Subnet - Name of Subnet bound to the IP configuration." + } + }, + "description": "InterfaceIPConfigurationPropertiesFormat properties of IP configuration." + } + }, + "description": "InterfaceIPConfiguration iPConfiguration in a network interface." + }, + "NetworkInterfaces": { + "type": "object", + "description": "The network interface resource definition.", + "x-ms-azure-resource": true, + "x-ms-client-flatten": true, + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceProperties" + }, + "extendedLocation": { + "$ref": "./common.json#/definitions/ExtendedLocation", + "description": "The extendedLocation of the resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + } + ] + }, + "NetworkInterfacesUpdateRequest": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "The network interface resource patch definition." + }, + "NetworkInterfacesListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaces" + } + }, + "nextLink": { + "type": "string" + } + } + } + }, + "parameters": { + "NetworkInterfaceNameParameter": { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$", + "x-ms-parameter-location": "method", + "maxLength": 80, + "minLength": 1, + "description": "Name of the network interface" + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/offers.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/offers.json new file mode 100644 index 0000000000000..4154d19bc32fa --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/offers.json @@ -0,0 +1,302 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-01", + "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/stable/2024-01-01/operations.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/operations.json new file mode 100644 index 0000000000000..08f6da1770945 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/operations.json @@ -0,0 +1,73 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-01", + "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": {} +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/publishers.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/publishers.json new file mode 100644 index 0000000000000..fd41bcf9a95e9 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/publishers.json @@ -0,0 +1,188 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-01", + "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/stable/2024-01-01/securitySettings.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/securitySettings.json new file mode 100644 index 0000000000000..56c8a2879818f --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/securitySettings.json @@ -0,0 +1,492 @@ +{ + "swagger": "2.0", + "info": { + "title": "AzureStackHCI", + "version": "2024-01-01", + "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/v3/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/v3/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/v3/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/v3/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" + }, + "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/v3/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/stable/2024-01-01/skus.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/skus.json new file mode 100644 index 0000000000000..f20458b7d5c50 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/skus.json @@ -0,0 +1,275 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-01", + "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/stable/2024-01-01/storageContainers.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/storageContainers.json new file mode 100644 index 0000000000000..5c561fb95e326 --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/storageContainers.json @@ -0,0 +1,455 @@ +{ + "swagger": "2.0", + "info": { + "title": "AzureStackHCI", + "description": "The Microsoft.AzureStackHCI Rest API spec.", + "version": "2024-01-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.AzureStackHCI/storageContainers/{storageContainerName}": { + "get": { + "operationId": "StorageContainers_Get", + "description": "Gets a storage container", + "x-ms-examples": { + "GetStorageContainer": { + "$ref": "./examples/GetStorageContainer.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/StorageContainerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageContainers" + } + } + } + }, + "put": { + "operationId": "StorageContainers_CreateOrUpdate", + "description": "The operation to create or update a storage container. Please note some properties can be set only during storage container creation.", + "x-ms-examples": { + "PutStorageContainer": { + "$ref": "./examples/PutStorageContainer.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/StorageContainerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageContainers", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageContainers" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Updated", + "schema": { + "$ref": "#/definitions/StorageContainers" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/StorageContainers" + } + } + } + }, + "delete": { + "operationId": "StorageContainers_Delete", + "description": "The operation to delete a storage container.", + "x-ms-examples": { + "DeleteStorageContainer": { + "$ref": "./examples/DeleteStorageContainer.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/StorageContainerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "No content" + } + } + }, + "patch": { + "operationId": "StorageContainers_Update", + "description": "The operation to update a storage container.", + "x-ms-examples": { + "UpdateStorageContainer": { + "$ref": "./examples/UpdateStorageContainer.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/StorageContainerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageContainers", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageContainersUpdateRequest" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageContainers" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/storageContainers": { + "get": { + "operationId": "StorageContainers_List", + "description": "Lists all of the storage containers in the specified resource group. Use the nextLink property in the response to get the next page of storage containers.", + "x-ms-examples": { + "ListStorageContainerByResourceGroup": { + "$ref": "./examples/ListStorageContainerByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageContainersListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AzureStackHCI/storageContainers": { + "get": { + "operationId": "StorageContainers_ListAll", + "description": "Lists all of the storage containers in the specified subscription. Use the nextLink property in the response to get the next page of storage containers.", + "x-ms-examples": { + "ListStorageContainerBySubscription": { + "$ref": "./examples/ListStorageContainerBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StorageContainersListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "StorageContainerProperties": { + "type": "object", + "x-ms-client-flatten": true, + "properties": { + "path": { + "type": "string", + "description": "Path of the storage container on the disk" + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the storage container.", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "InProgress", + "Accepted", + "Deleting", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningStateEnum", + "modelAsString": true + } + }, + "status": { + "$ref": "#/definitions/StorageContainerStatus" + } + }, + "required": [ + "path" + ], + "description": "Properties under the storage container resource" + }, + "StorageContainerStatus": { + "type": "object", + "x-ms-client-flatten": true, + "readOnly": true, + "properties": { + "errorCode": { + "type": "string", + "description": "StorageContainer provisioning error code" + }, + "errorMessage": { + "type": "string", + "description": "Descriptive error message" + }, + "availableSizeMB": { + "type": "integer", + "format": "int64", + "description": "Amount of space available on the disk in MB" + }, + "containerSizeMB": { + "type": "integer", + "format": "int64", + "description": "Total size of the disk in MB" + }, + "provisioningStatus": { + "type": "object", + "properties": { + "operationId": { + "type": "string", + "description": "The ID of the operation performed on the storage container" + }, + "status": { + "type": "string", + "description": "The status of the operation performed on the storage container [Succeeded, Failed, InProgress]", + "enum": [ + "Succeeded", + "Failed", + "InProgress" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + } + } + } + }, + "description": "The observed state of storage containers" + }, + "StorageContainers": { + "type": "object", + "description": "The storage container resource definition.", + "x-ms-azure-resource": true, + "x-ms-client-flatten": true, + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageContainerProperties" + }, + "extendedLocation": { + "$ref": "./common.json#/definitions/ExtendedLocation", + "description": "The extendedLocation of the resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + } + ] + }, + "StorageContainersUpdateRequest": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "The storage container resource patch definition." + }, + "StorageContainersListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/StorageContainers" + } + }, + "nextLink": { + "type": "string" + } + } + } + }, + "parameters": { + "StorageContainerNameParameter": { + "name": "storageContainerName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,78}[_a-zA-Z0-9]$", + "x-ms-parameter-location": "method", + "maxLength": 80, + "minLength": 1, + "description": "Name of the storage container" + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/updateRuns.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/updateRuns.json new file mode 100644 index 0000000000000..c798fb197909c --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/updateRuns.json @@ -0,0 +1,408 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-01", + "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" + }, + "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/stable/2024-01-01/updateSummaries.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/updateSummaries.json new file mode 100644 index 0000000000000..dc5e177eaa21d --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/updateSummaries.json @@ -0,0 +1,487 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-01", + "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" + }, + "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" + }, + "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": "#/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 + } + }, + "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" + } + } + }, + "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" + }, + "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" + } + } + } + }, + "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/stable/2024-01-01/updates.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/updates.json new file mode 100644 index 0000000000000..7233d5bf1af2e --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/updates.json @@ -0,0 +1,660 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-01", + "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" + }, + "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": "#/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 + } + }, + "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" + } + } + }, + "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" + }, + "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" + } + } + } + }, + "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/stable/2024-01-01/virtualHardDisks.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/virtualHardDisks.json new file mode 100644 index 0000000000000..9507488fa7cff --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/virtualHardDisks.json @@ -0,0 +1,494 @@ +{ + "swagger": "2.0", + "info": { + "title": "AzureStackHCI", + "description": "The Microsoft.AzureStackHCI Rest API spec.", + "version": "2024-01-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.AzureStackHCI/virtualHardDisks/{virtualHardDiskName}": { + "get": { + "operationId": "VirtualHardDisks_Get", + "description": "Gets a virtual hard disk", + "x-ms-examples": { + "GetVirtualHardDisk": { + "$ref": "./examples/GetVirtualHardDisk.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/VirtualHardDiskNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualHardDisks" + } + } + } + }, + "put": { + "operationId": "VirtualHardDisks_CreateOrUpdate", + "description": "The operation to create or update a virtual hard disk. Please note some properties can be set only during virtual hard disk creation.", + "x-ms-examples": { + "PutVirtualHardDisk": { + "$ref": "./examples/PutVirtualHardDisk.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/VirtualHardDiskNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHardDisks", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHardDisks" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Updated", + "schema": { + "$ref": "#/definitions/VirtualHardDisks" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualHardDisks" + } + } + } + }, + "delete": { + "operationId": "VirtualHardDisks_Delete", + "description": "The operation to delete a virtual hard disk.", + "x-ms-examples": { + "DeleteVirtualHardDisk": { + "$ref": "./examples/DeleteVirtualHardDisk.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/VirtualHardDiskNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "No content" + } + } + }, + "patch": { + "operationId": "VirtualHardDisks_Update", + "description": "The operation to update a virtual hard disk.", + "x-ms-examples": { + "UpdateVirtualHardDisk": { + "$ref": "./examples/UpdateVirtualHardDisk.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/VirtualHardDiskNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHardDisks", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHardDisksUpdateRequest" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualHardDisks" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureStackHCI/virtualHardDisks": { + "get": { + "operationId": "VirtualHardDisks_List", + "description": "Lists all of the virtual hard disks in the specified resource group. Use the nextLink property in the response to get the next page of virtual hard disks.", + "x-ms-examples": { + "ListVirtualHardDiskByResourceGroup": { + "$ref": "./examples/ListVirtualHardDiskByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualHardDisksListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AzureStackHCI/virtualHardDisks": { + "get": { + "operationId": "VirtualHardDisks_ListAll", + "description": "Lists all of the virtual hard disks in the specified subscription. Use the nextLink property in the response to get the next page of virtual hard disks.", + "x-ms-examples": { + "ListVirtualHardDiskBySubscription": { + "$ref": "./examples/ListVirtualHardDiskBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualHardDisksListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualHardDiskProperties": { + "type": "object", + "properties": { + "blockSizeBytes": { + "type": "integer", + "format": "int32" + }, + "diskSizeGB": { + "type": "integer", + "format": "int64", + "description": "Size of the disk in GB" + }, + "dynamic": { + "type": "boolean", + "description": "Boolean for enabling dynamic sizing on the virtual hard disk" + }, + "logicalSectorBytes": { + "type": "integer", + "format": "int32" + }, + "physicalSectorBytes": { + "type": "integer", + "format": "int32" + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine [V1, V2]", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "diskFileFormat": { + "type": "string", + "description": "The format of the actual VHD file [vhd, vhdx]", + "enum": [ + "vhdx", + "vhd" + ], + "x-ms-enum": { + "name": "DiskFileFormat", + "modelAsString": true + } + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the virtual hard disk.", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "InProgress", + "Accepted", + "Deleting", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningStateEnum", + "modelAsString": true + } + }, + "containerId": { + "type": "string", + "format": "arm-id", + "x-ms-arm-id-details": { + "allowedResources": [ + { + "type": "Microsoft.AzureStackHCI/storageContainers" + } + ] + }, + "description": "Storage ContainerID of the storage container to be used for VHD" + }, + "status": { + "$ref": "#/definitions/VirtualHardDiskStatus" + } + }, + "description": "Properties under the virtual hard disk resource" + }, + "VirtualHardDiskStatus": { + "type": "object", + "x-ms-client-flatten": true, + "readOnly": true, + "properties": { + "errorCode": { + "type": "string", + "description": "VirtualHardDisk provisioning error code" + }, + "errorMessage": { + "type": "string", + "description": "Descriptive error message" + }, + "provisioningStatus": { + "type": "object", + "properties": { + "operationId": { + "type": "string", + "description": "The ID of the operation performed on the virtual hard disk" + }, + "status": { + "type": "string", + "description": "The status of the operation performed on the virtual hard disk [Succeeded, Failed, InProgress]", + "enum": [ + "Succeeded", + "Failed", + "InProgress" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + } + } + } + }, + "description": "The observed state of virtual hard disks" + }, + "VirtualHardDisks": { + "type": "object", + "description": "The virtual hard disk resource definition.", + "x-ms-azure-resource": true, + "x-ms-client-flatten": true, + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHardDiskProperties" + }, + "extendedLocation": { + "$ref": "./common.json#/definitions/ExtendedLocation", + "description": "The extendedLocation of the resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + } + ] + }, + "VirtualHardDisksUpdateRequest": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "The virtual hard disk resource patch definition." + }, + "VirtualHardDisksListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHardDisks" + } + }, + "nextLink": { + "type": "string" + } + } + } + }, + "parameters": { + "VirtualHardDiskNameParameter": { + "name": "virtualHardDiskName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-._a-zA-Z0-9]{0,62}[a-zA-Z0-9]$", + "x-ms-parameter-location": "method", + "maxLength": 80, + "minLength": 1, + "description": "Name of the virtual hard disk" + } + } +} diff --git a/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/virtualMachineInstances.json b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/virtualMachineInstances.json new file mode 100644 index 0000000000000..7399e8e7d47bb --- /dev/null +++ b/specification/azurestackhci/resource-manager/Microsoft.AzureStackHCI/stable/2024-01-01/virtualMachineInstances.json @@ -0,0 +1,1561 @@ +{ + "swagger": "2.0", + "info": { + "title": "AzureStackHCI", + "description": "The Microsoft.AzureStackHCI Rest API spec.", + "version": "2024-01-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": { + "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default": { + "get": { + "operationId": "VirtualMachineInstances_Get", + "description": "Gets a virtual machine instance", + "x-ms-examples": { + "GetVirtualMachineInstance": { + "$ref": "./examples/GetVirtualMachineInstance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineInstance" + } + } + } + }, + "put": { + "operationId": "VirtualMachineInstances_CreateOrUpdate", + "description": "The operation to create or update a virtual machine instance. Please note some properties can be set only during virtual machine instance creation.", + "x-ms-examples": { + "PutVirtualMachineInstanceWithGalleryImage": { + "$ref": "./examples/PutVirtualMachineInstanceWithGalleryImage.json" + }, + "PutVirtualMachineInstanceWithMarketplaceGalleryImage": { + "$ref": "./examples/PutVirtualMachineInstanceWithMarketplaceGalleryImage.json" + }, + "PutVirtualMachineInstanceWithOsDisk": { + "$ref": "./examples/PutVirtualMachineInstanceWithOsDisk.json" + }, + "PutVirtualMachineInstanceWithVMConfigAgent": { + "$ref": "./examples/PutVirtualMachineInstanceWithVMConfigAgent.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualMachineInstance", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineInstance" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Updated", + "schema": { + "$ref": "#/definitions/VirtualMachineInstance" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineInstance" + } + } + } + }, + "delete": { + "operationId": "VirtualMachineInstances_Delete", + "description": "The operation to delete a virtual machine instance.", + "x-ms-examples": { + "DeleteVirtualMachine": { + "$ref": "./examples/DeleteVirtualMachineInstance.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "No content" + } + } + }, + "patch": { + "operationId": "VirtualMachineInstances_Update", + "description": "The operation to update a virtual machine instance.", + "x-ms-examples": { + "UpdateVirtualMachine": { + "$ref": "./examples/UpdateVirtualMachineInstance.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualMachineInstance", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineInstanceUpdateRequest" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineInstance" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + } + } + } + }, + "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/start": { + "post": { + "operationId": "VirtualMachineInstances_Start", + "description": "The operation to start a virtual machine instance.", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "StartVirtualMachine": { + "$ref": "./examples/StartVirtualMachineInstance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineInstance" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + } + } + } + }, + "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/stop": { + "post": { + "operationId": "VirtualMachineInstances_Stop", + "description": "The operation to stop a virtual machine instance.", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "StopVirtualMachine": { + "$ref": "./examples/StopVirtualMachineInstance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineInstance" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + } + } + } + }, + "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/restart": { + "post": { + "operationId": "VirtualMachineInstances_Restart", + "description": "The operation to restart a virtual machine instance.", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "RestartVirtualMachine": { + "$ref": "./examples/RestartVirtualMachineInstance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineInstance" + } + }, + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + } + } + } + }, + "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances": { + "get": { + "operationId": "VirtualMachineInstances_List", + "description": "Lists all of the virtual machine instances within the specified parent resource.", + "x-ms-examples": { + "ListVirtualMachineInstances": { + "$ref": "./examples/ListVirtualMachineInstances.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineInstanceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/hybridIdentityMetadata/default": { + "get": { + "tags": [ + "HybridIdentityMetadata" + ], + "operationId": "HybridIdentityMetadata_Get", + "summary": "Gets HybridIdentityMetadata.", + "description": "Implements HybridIdentityMetadata GET method.", + "x-ms-examples": { + "GetHybridIdentityMetadata": { + "$ref": "./examples/GetHybridIdentityMetadata.json" + } + }, + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HybridIdentityMetadata" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/hybridIdentityMetadata": { + "get": { + "tags": [ + "HybridIdentityMetadata" + ], + "operationId": "HybridIdentityMetadata_List", + "summary": "Implements GET HybridIdentityMetadata in a vm.", + "description": "Returns the list of HybridIdentityMetadata of the given vm.", + "x-ms-examples": { + "HybridIdentityMetadataListByVirtualMachineInstances": { + "$ref": "./examples/HybridIdentityMetadata_List.json" + } + }, + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HybridIdentityMetadataList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/guestAgents/default": { + "put": { + "tags": [ + "GuestAgents" + ], + "operationId": "GuestAgent_Create", + "description": "Create Or Update GuestAgent.", + "summary": "Implements GuestAgent PUT method.", + "x-ms-examples": { + "CreateGuestAgent": { + "$ref": "./examples/CreateGuestAgent.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "in": "body", + "name": "body", + "description": "Request payload.", + "schema": { + "$ref": "#/definitions/GuestAgent" + } + } + ], + "responses": { + "200": { + "description": "Updated", + "schema": { + "$ref": "#/definitions/GuestAgent" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/GuestAgent" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "GuestAgents" + ], + "operationId": "GuestAgent_Get", + "summary": "Gets GuestAgent.", + "description": "Implements GuestAgent GET method.", + "x-ms-examples": { + "GetGuestAgent": { + "$ref": "./examples/GetGuestAgent.json" + } + }, + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GuestAgent" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "GuestAgents" + ], + "operationId": "GuestAgent_Delete", + "summary": "Deleted an GuestAgent.", + "description": "Implements GuestAgent DELETE method.", + "x-ms-examples": { + "DeleteGuestAgent": { + "$ref": "./examples/DeleteGuestAgent.json" + } + }, + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted", + "headers": { + "Location": { + "type": "string" + } + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/{resourceUri}/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/guestAgents": { + "get": { + "tags": [ + "GuestAgents" + ], + "operationId": "GuestAgents_List", + "summary": "Implements GET GuestAgent in a vm.", + "description": "Returns the list of GuestAgent of the given vm.", + "x-ms-examples": { + "GuestAgentListByVirtualMachineInstances": { + "$ref": "./examples/GuestAgent_List.json" + } + }, + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ResourceUriParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GuestAgentList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualMachineInstanceProperties": { + "type": "object", + "x-ms-client-flatten": true, + "properties": { + "hardwareProfile": { + "type": "object", + "properties": { + "vmSize": { + "type": "string", + "enum": [ + "Default", + "Standard_A2_v2", + "Standard_A4_v2", + "Standard_D2s_v3", + "Standard_D4s_v3", + "Standard_D8s_v3", + "Standard_D16s_v3", + "Standard_D32s_v3", + "Standard_DS2_v2", + "Standard_DS3_v2", + "Standard_DS4_v2", + "Standard_DS5_v2", + "Standard_DS13_v2", + "Standard_K8S_v1", + "Standard_K8S2_v1", + "Standard_K8S3_v1", + "Standard_K8S4_v1", + "Standard_NK6", + "Standard_NK12", + "Standard_NV6", + "Standard_NV12", + "Standard_K8S5_v1", + "Custom" + ], + "default": "Default", + "x-ms-enum": { + "name": "VmSizeEnum", + "modelAsString": true + } + }, + "processors": { + "type": "integer", + "format": "int32", + "description": "number of processors for the virtual machine instance" + }, + "memoryMB": { + "type": "integer", + "format": "int64", + "description": "RAM in MB for the virtual machine instance" + }, + "dynamicMemoryConfig": { + "type": "object", + "properties": { + "maximumMemoryMB": { + "type": "integer", + "format": "int64" + }, + "minimumMemoryMB": { + "type": "integer", + "format": "int64" + }, + "targetMemoryBuffer": { + "type": "integer", + "description": "Defines the amount of extra memory that should be reserved for a virtual machine instance at runtime, as a percentage of the total memory that the virtual machine instance is thought to need. This only applies to virtual systems with dynamic memory enabled. This property can be in the range of 5 to 2000.", + "format": "int32" + } + } + } + }, + "description": "HardwareProfile - Specifies the hardware settings for the virtual machine instance." + }, + "networkProfile": { + "type": "object", + "properties": { + "networkInterfaces": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "ID - Resource Id of the network interface" + } + } + }, + "description": "NetworkInterfaces - list of network interfaces to be attached to the virtual machine instance" + } + }, + "description": "NetworkProfile - describes the network configuration the virtual machine instance" + }, + "osProfile": { + "type": "object", + "properties": { + "adminPassword": { + "type": "string", + "x-ms-secret": true, + "description": "AdminPassword - admin password", + "x-ms-mutability": [ + "create" + ] + }, + "adminUsername": { + "type": "string", + "description": "AdminUsername - admin username" + }, + "computerName": { + "type": "string", + "description": "ComputerName - name of the compute" + }, + "linuxConfiguration": { + "type": "object", + "properties": { + "disablePasswordAuthentication": { + "type": "boolean", + "description": "DisablePasswordAuthentication - whether password authentication should be disabled" + }, + "ssh": { + "$ref": "#/definitions/SshConfiguration", + "description": "Specifies the ssh key configuration for a Linux OS." + }, + "provisionVMAgent": { + "type": "boolean", + "default": true, + "description": "Used to indicate whether Arc for Servers agent onboarding should be triggered during the virtual machine instance creation process." + }, + "provisionVMConfigAgent": { + "type": "boolean", + "default": true, + "description": "Used to indicate whether the VM Config Agent should be installed during the virtual machine creation process." + } + }, + "description": "LinuxConfiguration - linux specific configuration values for the virtual machine instance" + }, + "windowsConfiguration": { + "type": "object", + "properties": { + "enableAutomaticUpdates": { + "type": "boolean", + "description": "Whether to EnableAutomaticUpdates on the machine" + }, + "ssh": { + "$ref": "#/definitions/SshConfiguration", + "description": "Specifies the ssh key configuration for Windows OS." + }, + "timeZone": { + "type": "string", + "description": "TimeZone for the virtual machine instance" + }, + "provisionVMAgent": { + "type": "boolean", + "default": true, + "description": "Used to indicate whether Arc for Servers agent onboarding should be triggered during the virtual machine instance creation process." + }, + "provisionVMConfigAgent": { + "type": "boolean", + "default": true, + "description": "Used to indicate whether the VM Config Agent should be installed during the virtual machine creation process." + } + }, + "description": "Windows Configuration for the virtual machine instance " + } + }, + "description": "OsProfile - describes the configuration of the operating system and sets login data" + }, + "securityProfile": { + "type": "object", + "properties": { + "enableTPM": { + "type": "boolean", + "default": false + }, + "uefiSettings": { + "type": "object", + "properties": { + "secureBootEnabled": { + "type": "boolean", + "default": false, + "description": "Specifies whether secure boot should be enabled on the virtual machine instance." + } + } + }, + "securityType": { + "type": "string", + "description": "Specifies the SecurityType of the virtual machine. EnableTPM and SecureBootEnabled must be set to true for SecurityType to function.", + "enum": [ + "TrustedLaunch", + "ConfidentialVM" + ], + "x-ms-enum": { + "name": "SecurityTypes", + "modelAsString": true + } + } + }, + "description": "SecurityProfile - Specifies the security settings for the virtual machine instance." + }, + "storageProfile": { + "type": "object", + "properties": { + "dataDisks": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID of the data disk" + } + } + }, + "description": "adds data disks to the virtual machine instance" + }, + "imageReference": { + "type": "object", + "properties": { + "id": { + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ], + "description": "Resource ID of the image" + } + }, + "description": "Which Image to use for the virtual machine instance" + }, + "osDisk": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID of the OS disk" + }, + "osType": { + "type": "string", + "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD. Possible values are: **Windows,** **Linux.**", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + } + }, + "description": "VHD to attach as OS disk" + }, + "vmConfigStoragePathId": { + "type": "string", + "format": "arm-id", + "x-ms-arm-id-details": { + "allowedResources": [ + { + "type": "Microsoft.AzureStackHCI/storageContainers" + } + ] + }, + "description": "Id of the storage container that hosts the VM configuration file" + } + }, + "description": "StorageProfile - contains information about the disks and storage information for the virtual machine instance" + }, + "httpProxyConfig": { + "description": "HTTP Proxy configuration for the VM.", + "$ref": "#/definitions/HttpProxyConfiguration" + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the virtual machine instance.", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "InProgress", + "Accepted", + "Deleting", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningStateEnum", + "modelAsString": true + } + }, + "instanceView": { + "$ref": "#/definitions/VirtualMachineInstanceView", + "readOnly": true, + "description": "The virtual machine instance view." + }, + "status": { + "$ref": "#/definitions/VirtualMachineInstanceStatus" + }, + "guestAgentInstallStatus": { + "description": "Guest agent install status.", + "$ref": "#/definitions/GuestAgentInstallStatus" + }, + "vmId": { + "description": "Unique identifier for the vm resource.", + "type": "string", + "readOnly": true + }, + "resourceUid": { + "description": "Unique identifier defined by ARC to identify the guest of the VM.", + "type": "string" + } + }, + "description": "Properties under the virtual machine instance resource" + }, + "SshPublicKey": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "Specifies the full path on the created VM where ssh public key is stored. If the file already exists, the specified key is appended to the file. Example: /home/user/.ssh/authorized_keys" + }, + "keyData": { + "type": "string", + "description": "SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format.

    For creating ssh keys, see [Create SSH keys on Linux and Mac for Linux VMs in Azure]https://docs.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed)." + } + }, + "description": "Contains information about SSH certificate public key and the path on the Linux VM where the public key is placed." + }, + "SshConfiguration": { + "type": "object", + "properties": { + "publicKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/SshPublicKey" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "The list of SSH public keys used to authenticate with linux based VMs." + } + }, + "description": "SSH configuration for Linux based VMs running on Azure" + }, + "VirtualMachineInstanceStatus": { + "type": "object", + "x-ms-client-flatten": true, + "readOnly": true, + "properties": { + "errorCode": { + "type": "string", + "description": "VirtualMachine provisioning error code" + }, + "errorMessage": { + "type": "string", + "description": "Descriptive error message" + }, + "powerState": { + "type": "string", + "description": "The power state of the virtual machine instance", + "enum": [ + "Deallocated", + "Deallocating", + "Running", + "Starting", + "Stopped", + "Stopping", + "Unknown" + ], + "x-ms-enum": { + "name": "PowerStateEnum", + "modelAsString": true + } + }, + "provisioningStatus": { + "type": "object", + "properties": { + "operationId": { + "type": "string", + "description": "The ID of the operation performed on the virtual machine instance" + }, + "status": { + "type": "string", + "description": "The status of the operation performed on the virtual machine instance [Succeeded, Failed, InProgress]", + "enum": [ + "Succeeded", + "Failed", + "InProgress" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + } + } + } + }, + "description": "The observed state of virtual machine instances" + }, + "VirtualMachineInstance": { + "type": "object", + "x-ms-client-flatten": true, + "x-ms-azure-resource": true, + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineInstanceProperties" + }, + "extendedLocation": { + "$ref": "./common.json#/definitions/ExtendedLocation", + "description": "The extendedLocation of the resource." + }, + "identity": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Identity" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ], + "description": "The virtual machine instance resource definition." + }, + "VirtualMachineInstanceView": { + "type": "object", + "properties": { + "vmAgent": { + "$ref": "#/definitions/VirtualMachineConfigAgentInstanceView", + "description": "The VM Config Agent running on the virtual machine." + } + }, + "description": "The instance view of a virtual machine." + }, + "VirtualMachineConfigAgentInstanceView": { + "type": "object", + "properties": { + "vmConfigAgentVersion": { + "type": "string", + "description": "The VM Config Agent full version." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "x-ms-identifiers": [], + "description": "The resource status information." + } + }, + "description": "The instance view of the VM Config Agent running on the virtual machine." + }, + "InstanceViewStatus": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "StatusLevelTypes", + "modelAsString": true + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + }, + "HardwareProfileUpdate": { + "type": "object", + "properties": { + "vmSize": { + "type": "string", + "enum": [ + "Default", + "Standard_A2_v2", + "Standard_A4_v2", + "Standard_D2s_v3", + "Standard_D4s_v3", + "Standard_D8s_v3", + "Standard_D16s_v3", + "Standard_D32s_v3", + "Standard_DS2_v2", + "Standard_DS3_v2", + "Standard_DS4_v2", + "Standard_DS5_v2", + "Standard_DS13_v2", + "Standard_K8S_v1", + "Standard_K8S2_v1", + "Standard_K8S3_v1", + "Standard_K8S4_v1", + "Standard_NK6", + "Standard_NK12", + "Standard_NV6", + "Standard_NV12", + "Standard_K8S5_v1", + "Custom" + ], + "default": "Default", + "x-ms-enum": { + "name": "VmSizeEnum", + "modelAsString": true + } + }, + "processors": { + "type": "integer", + "format": "int32", + "description": "number of processors for the virtual machine instance" + }, + "memoryMB": { + "type": "integer", + "format": "int64", + "description": "RAM in MB for the virtual machine instance" + } + }, + "description": "HardwareProfile - Specifies the hardware settings for the virtual machine instance." + }, + "NetworkProfileUpdate": { + "type": "object", + "properties": { + "networkInterfaces": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "ID - Resource ID of the network interface" + } + } + }, + "description": "NetworkInterfaces - list of network interfaces to be attached to the virtual machine instance" + } + }, + "description": "NetworkProfile - describes the network update configuration the virtual machine instance" + }, + "StorageProfileUpdate": { + "type": "object", + "properties": { + "dataDisks": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + } + } + }, + "description": "adds data disks to the virtual machine instance for the update call" + } + } + }, + "OsProfileUpdate": { + "type": "object", + "properties": { + "computerName": { + "type": "string", + "description": "ComputerName - name of the computer" + }, + "linuxConfiguration": { + "type": "object", + "properties": { + "provisionVMAgent": { + "type": "boolean", + "description": "Used to indicate whether Arc for Servers agent onboarding should be triggered during the virtual machine instance creation process." + }, + "provisionVMConfigAgent": { + "type": "boolean", + "description": "Used to indicate whether the VM Config Agent should be installed during the virtual machine creation process." + } + } + }, + "windowsConfiguration": { + "type": "object", + "properties": { + "provisionVMAgent": { + "type": "boolean", + "description": "Used to indicate whether Arc for Servers agent onboarding should be triggered during the virtual machine instance creation process." + }, + "provisionVMConfigAgent": { + "type": "boolean", + "description": "Used to indicate whether the VM Config Agent should be installed during the virtual machine creation process." + } + } + } + }, + "description": "OsProfile - describes the update configuration of the operating system" + }, + "VirtualMachineInstanceUpdateProperties": { + "description": "Defines the resource properties for the update.", + "type": "object", + "properties": { + "hardwareProfile": { + "$ref": "#/definitions/HardwareProfileUpdate" + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfileUpdate" + }, + "networkProfile": { + "$ref": "#/definitions/NetworkProfileUpdate" + }, + "osProfile": { + "$ref": "#/definitions/OsProfileUpdate" + } + } + }, + "VirtualMachineInstanceUpdateRequest": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/VirtualMachineInstanceUpdateProperties" + }, + "identity": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Identity" + } + }, + "description": "The virtual machine instance resource patch definition." + }, + "VirtualMachineInstanceListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineInstance" + } + }, + "nextLink": { + "type": "string" + } + } + }, + "GuestAgentInstallStatus": { + "description": "Defines the status of a guest agent installation.", + "type": "object", + "properties": { + "vmUuid": { + "readOnly": true, + "type": "string", + "description": "Specifies the VM's unique SMBIOS ID." + }, + "status": { + "readOnly": true, + "type": "string", + "description": "The installation status of the hybrid machine agent installation.", + "enum": [ + "Succeeded", + "InProgress", + "Failed" + ], + "x-ms-enum": { + "name": "StatusTypes", + "modelAsString": true + } + }, + "lastStatusChange": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time of the last status change." + }, + "agentVersion": { + "readOnly": true, + "type": "string", + "description": "The hybrid machine agent full version." + }, + "errorDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail" + }, + "x-ms-identifiers": [], + "description": "Details about the error state." + } + } + }, + "HybridIdentityMetadataList": { + "description": "List of HybridIdentityMetadata.", + "type": "object", + "properties": { + "nextLink": { + "description": "Url to follow for getting next page of HybridIdentityMetadata.", + "type": "string" + }, + "value": { + "description": "Array of HybridIdentityMetadata", + "type": "array", + "items": { + "$ref": "#/definitions/HybridIdentityMetadata" + } + } + }, + "required": [ + "value" + ] + }, + "HybridIdentityMetadata": { + "description": "Defines the HybridIdentityMetadata.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource", + "description": "The resource model definition for an Azure Resource Manager proxy resource. It will have everything other than required location and tags." + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Resource properties.", + "$ref": "#/definitions/HybridIdentityMetadataProperties" + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/systemData", + "description": "The system data." + } + }, + "x-ms-azure-resource": true + }, + "HybridIdentityMetadataProperties": { + "description": "Defines the resource properties.", + "type": "object", + "properties": { + "resourceUid": { + "description": "The unique identifier for the resource.", + "type": "string" + }, + "publicKey": { + "description": "The Public Key.", + "type": "string" + }, + "identity": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/Identity", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state.", + "type": "string", + "readOnly": true + } + } + }, + "GuestAgentList": { + "type": "object", + "description": "List of GuestAgent.", + "properties": { + "nextLink": { + "description": "Url to follow for getting next page of GuestAgent.", + "type": "string" + }, + "value": { + "description": "Array of GuestAgent", + "type": "array", + "items": { + "$ref": "#/definitions/GuestAgent" + } + } + }, + "required": [ + "value" + ] + }, + "GuestAgent": { + "description": "Defines the GuestAgent.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource", + "description": "The resource model definition for an Azure Resource Manager proxy resource. It will have everything other than required location and tags." + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Resource properties.", + "$ref": "#/definitions/GuestAgentProperties" + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/systemData", + "description": "The system data." + } + }, + "x-ms-azure-resource": true + }, + "ProvisioningAction": { + "description": "Defines the different types of operations for guest agent.", + "enum": [ + "install", + "uninstall", + "repair" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "ProvisioningAction" + } + }, + "GuestCredential": { + "description": "Username / Password Credentials to connect to guest.", + "type": "object", + "properties": { + "username": { + "description": "The username to connect with the guest.", + "type": "string" + }, + "password": { + "description": "The password to connect with the guest.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ], + "x-ms-secret": true + } + } + }, + "GuestAgentProperties": { + "description": "Defines the resource properties.", + "type": "object", + "properties": { + "credentials": { + "description": "Username / Password Credentials to provision guest agent.", + "$ref": "#/definitions/GuestCredential" + }, + "provisioningAction": { + "description": "The guest agent provisioning action.", + "$ref": "#/definitions/ProvisioningAction", + "type": "string" + }, + "status": { + "description": "The guest agent status.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state.", + "type": "string", + "readOnly": true + } + } + }, + "HttpProxyConfiguration": { + "description": "HTTP Proxy configuration for the VM.", + "type": "object", + "properties": { + "httpProxy": { + "type": "string", + "x-ms-secret": true, + "description": "The HTTP proxy server endpoint to use." + }, + "httpsProxy": { + "type": "string", + "x-ms-secret": true, + "description": "The HTTPS proxy server endpoint to use." + }, + "noProxy": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The endpoints that should not go through proxy." + }, + "trustedCa": { + "type": "string", + "description": "Alternative CA cert to use for connecting to proxy servers." + } + } + } + }, + "parameters": { + "ResourceUriParameter": { + "in": "path", + "name": "resourceUri", + "description": "The fully qualified Azure Resource manager identifier of the Hybrid Compute machine resource to be extended.", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/azurestackhci/resource-manager/readme.md b/specification/azurestackhci/resource-manager/readme.md index 3d0dbad3c8a9d..4e53b7b700a43 100644 --- a/specification/azurestackhci/resource-manager/readme.md +++ b/specification/azurestackhci/resource-manager/readme.md @@ -29,7 +29,7 @@ title: AzureStackHCIClient description: Azure Stack HCI management service openapi-type: arm openapi-subtype: rpaas -tag: package-preview-2023-11 +tag: package-2024-01 ``` ## Suppression @@ -79,6 +79,34 @@ suppressions: ``` +### Tag: package-2024-01 + +These settings apply only when `--tag=package-2024-01` is specified on the command line. + +```yaml $(tag) == 'package-2024-01' +input-file: + - Microsoft.AzureStackHCI/stable/2024-01-01/arcSettings.json + - Microsoft.AzureStackHCI/stable/2024-01-01/clusters.json + - Microsoft.AzureStackHCI/stable/2024-01-01/deploymentSettings.json + - Microsoft.AzureStackHCI/stable/2024-01-01/edgeDevices.json + - Microsoft.AzureStackHCI/stable/2024-01-01/common.json + - Microsoft.AzureStackHCI/stable/2024-01-01/extensions.json + - Microsoft.AzureStackHCI/stable/2024-01-01/galleryImages.json + - Microsoft.AzureStackHCI/stable/2024-01-01/logicalNetworks.json + - Microsoft.AzureStackHCI/stable/2024-01-01/marketplaceGalleryImages.json + - Microsoft.AzureStackHCI/stable/2024-01-01/networkInterfaces.json + - Microsoft.AzureStackHCI/stable/2024-01-01/offers.json + - Microsoft.AzureStackHCI/stable/2024-01-01/operations.json + - Microsoft.AzureStackHCI/stable/2024-01-01/publishers.json + - Microsoft.AzureStackHCI/stable/2024-01-01/securitySettings.json + - Microsoft.AzureStackHCI/stable/2024-01-01/skus.json + - Microsoft.AzureStackHCI/stable/2024-01-01/storageContainers.json + - Microsoft.AzureStackHCI/stable/2024-01-01/updateRuns.json + - Microsoft.AzureStackHCI/stable/2024-01-01/updateSummaries.json + - Microsoft.AzureStackHCI/stable/2024-01-01/updates.json + - Microsoft.AzureStackHCI/stable/2024-01-01/virtualHardDisks.json + - Microsoft.AzureStackHCI/stable/2024-01-01/virtualMachineInstances.json +``` ### Tag: package-preview-2023-11 These settings apply only when `--tag=package-preview-2023-11` is specified on the command line. diff --git a/specification/cognitiveservices/OpenAI.Inference/client.tsp b/specification/cognitiveservices/OpenAI.Inference/client.tsp index 1674b4aad019d..d890f79c304f5 100644 --- a/specification/cognitiveservices/OpenAI.Inference/client.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/client.tsp @@ -7,7 +7,7 @@ using Azure.ClientGenerator.Core; #suppress "@azure-tools/typespec-azure-core/casing-style" "OpenAI is a case-sensitive name" @TypeSpec.Versioning.useDependency( - Azure.OpenAI.ServiceApiVersions.v2023_12_01_Preview + Azure.OpenAI.ServiceApiVersions.v2024_02_15_Preview ) namespace Client; @@ -35,9 +35,10 @@ interface OpenAIClient { getCompletions is Azure.OpenAI.getCompletions; getChatCompletions is Azure.OpenAI.getChatCompletions; - getChatCompletionsWithAzureExtensions is Azure.OpenAI.getChatCompletionsWithAzureExtensions; getImageGenerations is Azure.OpenAI.getImageGenerations; + generateSpeechFromText is Azure.OpenAI.generateSpeechFromText; + getEmbeddings is Azure.OpenAI.getEmbeddings; } diff --git a/specification/cognitiveservices/OpenAI.Inference/client/custom_visibility.tsp b/specification/cognitiveservices/OpenAI.Inference/client/custom_visibility.tsp index 67ad13d0d5658..0e6dda4a7b806 100644 --- a/specification/cognitiveservices/OpenAI.Inference/client/custom_visibility.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/client/custom_visibility.tsp @@ -3,11 +3,6 @@ import "../main.tsp"; using Azure.ClientGenerator.Core; -// Azure-specific Chat Completions with extensions should be handled by clients as a conditional selection within the -// shared Chat Completions route, with the selection gated by the presence or non-presence of additional child -// configuration options on the request payload options model. -@@access(Azure.OpenAI.getChatCompletionsWithAzureExtensions, Access.internal); - // In C#, the functionality provided by the `response_format` property used in image generations is handled by unique // method signatures for the different response types (i.e. blob URL versus base64 methods). @@access(Azure.OpenAI.ImageGenerationResponseFormat, Access.internal, "csharp"); @@ -28,20 +23,14 @@ using Azure.ClientGenerator.Core; @@access(Azure.OpenAI.AudioTranslation, Access.public, "java"); @@access(Azure.OpenAI.AudioTranslationOptions, Access.public, "java"); -@@access(Azure.OpenAI.AzureCognitiveSearchIndexFieldMappingOptions, - Access.public -); -@@usage(Azure.OpenAI.AzureCognitiveSearchIndexFieldMappingOptions, Usage.input); +@@access(Azure.OpenAI.AzureSearchIndexFieldMappingOptions, Access.public); +@@usage(Azure.OpenAI.AzureSearchIndexFieldMappingOptions, Usage.input); -@@access(Azure.OpenAI.AzureCognitiveSearchQueryType, Access.public); -@@usage(Azure.OpenAI.AzureCognitiveSearchQueryType, Usage.input); +@@access(Azure.OpenAI.AzureSearchQueryType, Access.public); +@@usage(Azure.OpenAI.AzureSearchQueryType, Usage.input); -@@access(Azure.OpenAI.AzureCognitiveSearchChatExtensionConfiguration, - Access.public -); -@@usage(Azure.OpenAI.AzureCognitiveSearchChatExtensionConfiguration, - Usage.input -); +@@access(Azure.OpenAI.AzureSearchChatExtensionConfiguration, Access.public); +@@usage(Azure.OpenAI.AzureSearchChatExtensionConfiguration, Usage.input); // Remap "model" nomenclature to "DeploymentName" in appropriate containers; comments should clarify the dual use @@projectedName(Azure.OpenAI.ImageGenerationOptions.`model`, @@ -77,3 +66,33 @@ using Azure.ClientGenerator.Core; "csharp", "InternalPlainText" ); + +@@projectedName(Azure.OpenAI.ChatCompletionsOptions.logprobs, + "csharp", + "EnableLogProbabilities" +); +@@projectedName(Azure.OpenAI.ChatCompletionsOptions.top_logprobs, + "csharp", + "LogProbabilitiesPerToken" +); + +@@projectedName(Azure.OpenAI.ChatChoice.logprobs, + "csharp", + "LogProbabilityInfo" +); +@@projectedName(Azure.OpenAI.ChatChoiceLogProbabilityInfo.content, + "csharp", + "TokenLogProbabilityResults" +); +@@projectedName(Azure.OpenAI.ChatTokenLogProbabilityResult.top_logprobs, + "csharp", + "TopLogProbabilityEntries" +); +@@projectedName(Azure.OpenAI.ChatTokenLogProbabilityInfo.logprob, + "csharp", + "LogProbability" +); +@@projectedName(Azure.OpenAI.ChatTokenLogProbabilityInfo.bytes, + "csharp", + "Utf8ByteValues" +); diff --git a/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_audio_speech.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_audio_speech.json new file mode 100644 index 0000000000000..a0a7a03cbe739 --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/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-02-15-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/OpenAI.Inference/examples/2024-02-15-preview/generated_audio_transcription_object.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_audio_transcription_object.json new file mode 100644 index 0000000000000..a01cac91c44fa --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/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-02-15-preview", + "deploymentId": "", + "file": "U3dhZ2dlciByb2Nrcw==" + }, + "responses": { + "200": { + "body": { + "text": "A structured object when requesting json or verbose_json" + } + } + } +} diff --git a/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_audio_transcription_text.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_audio_transcription_text.json new file mode 100644 index 0000000000000..2f6879b76e912 --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/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-02-15-preview", + "deploymentId": "", + "file": "U3dhZ2dlciByb2Nrcw==" + }, + "responses": { + "200": { + "type": "string", + "body": "plain text when requesting text, srt, or vtt" + } + } +} diff --git a/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_audio_translation_object.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_audio_translation_object.json new file mode 100644 index 0000000000000..547f78c69ab97 --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/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-02-15-preview", + "deploymentId": "", + "file": "U3dhZ2dlciByb2Nrcw==" + }, + "responses": { + "200": { + "body": { + "text": "A structured object when requesting json or verbose_json" + } + } + } +} diff --git a/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_audio_translation_text.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_audio_translation_text.json new file mode 100644 index 0000000000000..e430342593698 --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/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-02-15-preview", + "deploymentId": "", + "file": "U3dhZ2dlciByb2Nrcw==" + }, + "responses": { + "200": { + "type": "string", + "body": "plain text when requesting text, srt, or vtt" + } + } +} diff --git a/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_chat_completions.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_chat_completions.json new file mode 100644 index 0000000000000..51bcbbe919942 --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/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-02-15-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/OpenAI.Inference/examples/2024-02-15-preview/generated_completions.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_completions.json new file mode 100644 index 0000000000000..43c88dd756a25 --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/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-02-15-preview", + "deploymentId": "", + "body": { + "prompt": [ + "tell me a joke about mango" + ], + "max_tokens": 32, + "temperature": 1.0, + "n": 1 + } + }, + "responses": { + "200": { + "body": { + "id": "cmpl-7QmVI15qgYVllxK0FtxVGG6ywfzaq", + "created": 1686617332, + "choices": [ + { + "text": "es\n\nWhat do you call a mango who's in charge?\n\nThe head mango.", + "index": 0, + "finish_reason": "stop", + "logprobs": null + } + ], + "usage": { + "completion_tokens": 20, + "prompt_tokens": 6, + "total_tokens": 26 + } + } + } + } +} diff --git a/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_embeddings.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_embeddings.json new file mode 100644 index 0000000000000..11cf8708a3624 --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_embeddings.json @@ -0,0 +1,1567 @@ +{ + "operationId": "GetEmbeddings", + "title": "Return the embeddings for a given prompt.", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-02-15-preview", + "deploymentId": "deployment-afa0669ca01e4693ae3a93baf40f26d6", + "body": { + "input": [ + "this is a test" + ] + } + }, + "responses": { + "200": { + "body": { + "data": [ + { + "index": 0, + "embedding": [ + -0.012838088, + -0.007421397, + -0.017617522, + -0.028278312, + -0.018666342, + 0.01737855, + -0.01821495, + -0.006950092, + -0.009937238, + -0.038580645, + 0.010674067, + 0.02412286, + -0.013647936, + 0.013189907, + 0.0021125758, + 0.012406612, + 0.020790534, + 0.00074595667, + 0.008397198, + -0.00535031, + 0.008968075, + 0.014351576, + -0.014086051, + 0.015055214, + -0.022211088, + -0.025198232, + 0.0065186154, + -0.036350243, + 0.009180495, + -0.009698266, + 0.009446018, + -0.008463579, + -0.0040426035, + -0.03443847, + -0.00091273896, + -0.0019217303, + 0.002349888, + -0.021560553, + 0.016515596, + -0.015572986, + 0.0038666942, + -0.00008432463, + 0.0032178196, + -0.020365695, + -0.009631885, + -0.007647093, + 0.0033837722, + -0.026764825, + -0.010501476, + 0.020219658, + 0.024640633, + -0.0066912062, + -0.036456455, + -0.0040923897, + -0.013966565, + 0.017816665, + 0.005366905, + 0.022835068, + 0.0103488, + -0.0010811808, + -0.028942121, + 0.0074280356, + -0.017033368, + 0.0074877786, + 0.021640211, + 0.002499245, + 0.013316032, + 0.0021524043, + 0.010129742, + 0.0054731146, + 0.03143805, + 0.014856071, + 0.0023366117, + -0.0008243692, + 0.022781964, + 0.003038591, + -0.017617522, + 0.0013309394, + 0.0022154662, + 0.00097414135, + 0.012041516, + -0.027906578, + -0.023817508, + 0.013302756, + -0.003003741, + -0.006890349, + 0.0016744611, + 0.023658194, + -0.015851786, + -0.0045305043, + -0.003038591, + 0.017710455, + 0.019237218, + 0.016037652, + -0.022503164, + 0.025795663, + -0.001129307, + 0.032500144, + -0.008178141, + -0.019940857, + -0.009877495, + 0.00018918588, + 0.023060765, + -0.005692172, + -0.018347712, + -0.011039163, + -0.0062066247, + -0.0000524047, + 0.020126723, + -0.0011691356, + -0.015811957, + 0.020086896, + -0.009114114, + -0.03056182, + 0.0029025099, + -0.006591635, + -0.014046223, + -0.01590489, + -0.02307404, + -0.008861865, + -0.004832538, + 0.010030171, + 0.02311387, + -0.012652221, + 0.024906157, + 0.003860056, + -0.01936998, + -0.02957938, + -0.008357369, + -0.0016371218, + 0.027800368, + 0.0077333883, + 0.021626934, + 0.02140124, + -0.030482162, + 0.026406368, + -0.008277712, + 0.012884554, + -0.043784916, + -0.0145639945, + -0.0070297495, + 0.034889862, + -0.00041508878, + -0.010528029, + -0.009572142, + 0.015692472, + 0.037810627, + -0.0022021902, + 0.008662722, + -0.016794397, + 0.0003090866, + -0.0060506295, + 0.015227805, + 0.0006650548, + 0.01842737, + 0.036801632, + -0.002461076, + -0.0029390194, + -0.0057120863, + -0.012486269, + -0.0046831807, + -0.0017474802, + -0.0036210844, + -0.01178263, + 0.017869769, + 0.039111692, + 0.010946229, + 0.018467197, + 0.0027780454, + -0.005851486, + -0.016489044, + 0.03186289, + -0.040333103, + 0.016648358, + -0.006870435, + 0.0072687212, + 0.000002370982, + 0.006465511, + -0.018201673, + -0.00020526254, + -0.025410652, + 0.02010017, + 0.017537864, + 0.022821793, + 0.0064555537, + -0.0012969191, + 0.02157383, + -0.0053536287, + -0.0087622935, + -0.010952868, + 0.017564416, + 0.02185263, + 0.0004733796, + 0.0018337755, + -0.6954606, + -0.011231667, + 0.02748174, + 0.003929756, + 0.0144843375, + 0.045192193, + 0.01898497, + -0.0070363875, + -0.007813046, + 0.017604245, + -0.017790113, + 0.011165286, + -0.0036376796, + -0.014736585, + 0.0016421003, + -0.019144284, + -0.0072222543, + -0.023127146, + 0.006936816, + 0.025198232, + 0.0030219958, + 0.011722887, + -0.004271618, + -0.0011127117, + -0.0051047, + 0.00077333883, + 0.018599961, + 0.0074877786, + 0.010820106, + 0.0033406245, + -0.015055214, + 0.02384406, + 0.006090458, + 0.00891497, + 0.023366116, + -0.011078991, + -0.019582398, + 0.0011566891, + 0.015413672, + 0.01793615, + -0.014736585, + 0.002492607, + 0.027800368, + 0.023923717, + -0.007421397, + 0.0016105693, + 0.011337877, + -0.015041938, + -0.008768932, + -0.003982861, + 0.002884255, + -0.007832959, + 0.0025457118, + -0.0023548664, + -0.0061767534, + -0.016754568, + 0.0006036523, + 0.0105346665, + 0.0055361767, + 0.01478969, + -0.0011251582, + 0.009605332, + -0.0037140178, + -0.017537864, + -0.021733144, + 0.012897831, + -0.024481317, + 0.022290744, + 0.0056523434, + -0.005366905, + 0.0020412162, + 0.013435517, + -0.003408665, + -0.01705992, + 0.029446619, + 0.022011945, + 0.009226961, + -0.003310753, + -0.007939169, + 0.021308305, + 0.0026718357, + 0.002129171, + -0.020047067, + -0.007474502, + 0.021534001, + -0.0110590765, + -0.018374264, + -0.001664504, + -0.003923118, + 0.015387119, + 0.025516862, + 0.0016421003, + -0.017498035, + -0.01825478, + 0.01451089, + -0.008198055, + -0.011656506, + 0.0044242945, + 0.031491153, + 0.01017621, + -0.010408543, + -0.009034456, + -0.0023283141, + 0.012021601, + 0.015639367, + 0.011736163, + 0.007912617, + 0.02031259, + 0.022104878, + -0.02241023, + 0.00041156227, + -0.009817752, + -0.030880447, + -0.0017823302, + 0.0030933553, + -0.04128899, + -0.0007783174, + 0.012393335, + 0.0122273825, + -0.009087561, + 0.022728859, + -0.002884255, + 0.028065892, + 0.0047396044, + 0.008065294, + 0.015519881, + 0.0133956885, + -0.02279524, + -0.011729525, + 0.0037206558, + -0.0046732235, + 0.003587894, + 0.024401661, + -0.013574918, + 0.012685412, + -0.0041620894, + 0.020578114, + 0.007394845, + 0.014139156, + -0.012512821, + -0.021042781, + 0.022423506, + -0.015360567, + 0.004009413, + 0.0104550095, + -0.024799947, + -0.0081449505, + -0.00063850236, + 0.0070231115, + -0.0009633545, + -0.015705748, + -0.0028942123, + -0.008815398, + 0.007461226, + -0.014417957, + -0.012931022, + 0.0015674217, + -0.02506547, + -0.0063128346, + -0.013422241, + -0.0058614435, + -0.0006007482, + -0.015002109, + 0.0037040606, + -0.008410474, + -0.0016089098, + -0.018653065, + 0.020538285, + -0.016980262, + -0.042244878, + -0.017498035, + 0.006727716, + -0.01877255, + 0.008987989, + 0.00077665783, + -0.0007119364, + -0.0067243967, + 0.0038467797, + -0.018055636, + -0.01440468, + 0.007534245, + 0.0051212953, + 0.002741536, + 0.011523744, + -0.0018603279, + 0.023684746, + 0.016196968, + 0.01731217, + -0.01992758, + 0.009372999, + -0.01982137, + 0.001150051, + -0.014417957, + 0.005672258, + -0.015785405, + 0.0049387473, + -0.0051445286, + 0.012632307, + 0.0011666464, + 0.024587527, + 0.04259006, + -0.0025672857, + 0.02311387, + -0.014524166, + 0.0013848739, + -0.04105002, + -0.010089914, + -0.009087561, + 0.015440224, + 0.009207047, + 0.0128048975, + -0.030216638, + -0.02549031, + 0.00499849, + 0.02737553, + 0.024985814, + -0.015055214, + 0.007580712, + -0.003979542, + 0.0016304837, + 0.0010446712, + 0.0033373055, + 0.0066314633, + -0.011948583, + -0.021281753, + 0.012161002, + 0.030747686, + 0.03555367, + 0.023751127, + -0.03159736, + -0.0110590765, + 0.015758853, + -0.0012197511, + -0.0023249951, + -0.0007488608, + 0.0074877786, + 0.01643594, + -0.008098484, + 0.03730613, + -0.0010056724, + -0.000034798173, + 0.011702972, + 0.039563086, + -0.012280487, + 0.027747264, + 0.018387541, + 0.033057746, + -0.004835857, + -0.00471969, + 0.025450481, + -0.0051146573, + 0.014603823, + 0.00022258384, + 0.00060863094, + 0.015665919, + -0.021626934, + -0.013674489, + 0.0062066247, + 0.018560132, + 0.031942543, + 0.012054792, + 0.004902238, + 0.0028510645, + -0.027667606, + 0.009817752, + -0.002580562, + 0.0069036256, + 0.020047067, + -0.009704905, + -0.012619031, + -0.0056755766, + -0.0036443176, + 0.019383255, + 0.0030701219, + 0.024972538, + 0.009100837, + 0.026353262, + 0.012758431, + 0.029074885, + 0.021202097, + -0.0038102702, + -0.032048754, + 0.003996137, + 0.0029738694, + 0.0032277768, + -0.026127568, + -0.02213143, + 0.0028742978, + 0.0010637557, + 0.000580419, + 0.0021789568, + 0.00083764544, + 0.026924139, + -0.03265946, + 0.0059211864, + 0.021892458, + 0.01178263, + 0.0018188398, + 0.009718181, + -0.020047067, + 0.017989255, + 0.0046035233, + -0.010561219, + -0.010342162, + 0.009505761, + -0.018334435, + -0.00667793, + -0.024534423, + 0.00035347888, + 0.00082561385, + -0.006143563, + 0.016820949, + -0.0013500239, + -0.0069832825, + 0.015347291, + -0.005094743, + 0.001838754, + 0.017073197, + 0.02521151, + 0.006209944, + -0.015612815, + -0.009744733, + -0.019794818, + 0.007786493, + 0.037624758, + 0.017564416, + 0.0076802834, + 0.0026203906, + 0.0022403593, + -0.024560975, + -0.04062518, + -0.016581977, + 0.00789934, + 0.0099305995, + 0.006996559, + 0.011078991, + 0.016236795, + -0.0068969876, + 0.01374087, + 0.014922452, + -0.0042882133, + 0.00022901449, + -0.0006692036, + 0.001359981, + -0.00007581957, + 0.0042616613, + 0.0066381013, + 0.012512821, + 0.021534001, + 0.0032775626, + 0.016913882, + -0.00789934, + -0.009200408, + -0.020286039, + -0.017033368, + 0.014378128, + 0.009233599, + 0.0070828544, + -0.013229736, + 0.025928425, + -0.011862287, + 0.008383922, + 0.012632307, + -0.0003097089, + 0.007593988, + 0.0059079104, + -0.0026369859, + -0.0262205, + 0.003335646, + -0.0067609064, + -0.0042882133, + 0.008549875, + -0.007600626, + -0.012592479, + 0.028623493, + -0.0030502076, + -0.006989921, + -0.015785405, + 0.010050085, + 0.016714739, + -0.023724575, + -0.006346025, + -0.014245366, + -0.032154962, + -0.03388087, + -0.024308728, + -0.002461076, + -0.003733932, + -0.02195884, + -0.021069333, + -0.022144707, + -0.007872788, + -0.017179407, + -0.009034456, + -0.010893124, + -0.02478667, + -0.020153277, + -0.023976821, + 0.014656927, + 0.0005368565, + -0.015878338, + 0.010123105, + -0.0030717815, + 0.01555971, + 0.0018321159, + -0.036244035, + 0.00017176087, + -0.013375774, + -0.010375353, + 0.026512576, + 0.016581977, + 0.013847079, + 0.015719024, + 0.013223098, + 0.004975257, + -0.0010579474, + -0.0034385365, + -0.029048331, + 0.017298892, + -0.022529716, + 0.008463579, + -0.014723309, + -0.005814977, + -0.009027818, + -0.009738095, + -0.0104682855, + -0.005044957, + 0.007905979, + 0.011656506, + 0.003153098, + -0.0005231654, + 0.019954132, + -0.021985391, + -0.005307162, + 0.0021839354, + -0.025184957, + 0.013926737, + -0.0059908866, + 0.0065717204, + 0.009884133, + -0.0062298584, + 0.03388087, + 0.0028577026, + -0.015931444, + 0.0010986058, + -0.025808938, + 0.0022835068, + 0.014152432, + 0.015227805, + 0.013701041, + -0.007872788, + -0.030614924, + -0.026393091, + 0.0010753724, + -0.016940435, + 0.013647936, + -0.007408121, + -0.024308728, + -0.031915992, + -0.018161846, + 0.00072521257, + 0.028862465, + 0.012234021, + -0.019555846, + -0.027641054, + -0.00082810316, + -0.0019150922, + -0.016276624, + -0.01125822, + -0.034146395, + -0.015294186, + 0.006671292, + -0.015533158, + 0.013674489, + -0.0011766035, + -0.017325444, + -0.023233354, + -0.013189907, + 0.0005580154, + -0.03188944, + -0.007056302, + -0.0059942054, + 0.03411984, + 0.04317421, + 0.029420065, + 0.006488744, + -0.0022436783, + 0.013063784, + 0.00012207884, + 0.008118398, + -0.023246631, + 0.0051909955, + -0.00894816, + 0.0081316745, + 0.0023200165, + 0.011510468, + -0.0005770999, + 0.00016979019, + 0.010129742, + 0.015506605, + -0.0073815687, + 0.0031995648, + -0.026578957, + -0.016674912, + 0.0049652997, + 0.0072687212, + -0.016568702, + -0.001964878, + -0.015692472, + -0.0048955996, + 0.027773816, + 0.012864641, + 0.01594472, + 0.008244522, + 0.017139578, + -0.01772373, + -0.0012521119, + 0.011689696, + 0.0111121815, + -0.0036476366, + 0.0012570905, + -0.007826322, + -0.016754568, + 0.011948583, + -0.0045968853, + 0.023963546, + -0.0052739717, + 0.014656927, + 0.009731457, + 0.010727172, + -0.01705992, + -0.0026071144, + 0.010760362, + 0.000919377, + -0.006365939, + -0.03013698, + -0.010554581, + -0.018613236, + 0.013886908, + 0.029420065, + -0.013030593, + 0.016860778, + -0.019237218, + -0.022118153, + 0.007919255, + -0.0004003605, + 0.046546366, + 0.01349526, + 0.006352663, + 0.014258642, + 0.0031813101, + -0.027017072, + 0.0070828544, + -0.020219658, + 0.0037140178, + 0.023366116, + 0.040386207, + -0.016382834, + -0.0023681426, + 0.0064522345, + 0.016528873, + 0.0006804054, + -0.02891557, + -0.0043545947, + 0.01101261, + -0.0014778073, + -0.018055636, + -0.0077001974, + -0.0358723, + 0.003373815, + -0.00071940426, + -0.011822458, + -0.024295451, + -0.009791199, + -0.026565682, + 0.020989677, + -0.035155386, + 0.01832116, + 0.014776413, + -0.028012788, + -0.007262083, + 0.0030402504, + -0.029446619, + 0.00010174965, + 0.009758009, + 0.03767786, + -0.0154535, + 0.009346447, + 0.016077481, + 0.0041189417, + -0.027800368, + 0.01720596, + -0.011158649, + 0.027800368, + -0.03003077, + -0.0072819972, + 0.0014296811, + 0.0145374425, + 0.0043280423, + -0.017086472, + -0.01611731, + -0.01258584, + -0.016927158, + 0.007607264, + 0.018825656, + 0.011331239, + -0.0057784673, + 0.001569911, + -0.013900184, + -0.014776413, + -0.0050814664, + -0.0012454737, + -0.0115967635, + -0.017458206, + -0.013203184, + -0.0063692583, + -0.01244644, + 0.011882202, + 0.0007708495, + -0.02035242, + 0.016250072, + 0.018414093, + -0.029526275, + 0.012751793, + -0.01555971, + 0.0013840442, + -0.019502742, + 0.0063758963, + 0.0037538463, + -0.035686433, + 0.027534844, + -0.016409386, + -0.03247359, + -0.008782208, + -0.0059842486, + 0.014338299, + 0.009233599, + -0.0053171194, + 0.006160158, + 0.0072952732, + 0.01401967, + 0.008815398, + -0.023790956, + 0.013096974, + -0.0031365028, + 0.005044957, + 0.0005356118, + -0.009379637, + 0.0066248253, + -0.00010724682, + 0.010289057, + 0.008815398, + -0.02279524, + -0.019701885, + -0.0027747264, + 0.016183691, + -0.014205537, + -0.003933075, + -0.013375774, + -0.005751915, + -0.010116466, + 0.004988533, + -0.005904591, + -0.008656085, + -0.017431654, + -0.011988411, + -0.01594472, + 0.00660823, + -0.027216217, + 0.0073218257, + -0.029977666, + -0.004593566, + -0.026671892, + -0.028517283, + -0.0050084474, + 0.009844304, + 0.025729282, + -0.013780698, + -0.026751548, + 0.004905557, + -0.035951957, + -0.026738273, + -0.019768266, + 0.0048690476, + 0.005250738, + 0.0014603822, + -0.018892037, + 0.017683903, + 0.0067177587, + 0.027694158, + -0.002618731, + -0.012419888, + 0.01772373, + -0.0032593077, + 0.006611549, + 0.016648358, + -0.03789028, + -0.023100592, + 0.023684746, + 0.0031248862, + 0.016382834, + 0.019967409, + -0.008941523, + -0.02014, + 0.0073882067, + 0.011357792, + -0.0031796505, + -0.0030253148, + -0.0010206081, + -0.017577693, + -0.009598695, + 0.002915786, + 0.001325131, + -0.0029207645, + -0.010780277, + -0.00325101, + -0.00811176, + -0.00073434, + -0.030083876, + -0.012864641, + -0.012745155, + -0.011769353, + 0.018785827, + -0.008264436, + -0.002675155, + 0.024255622, + 0.005483072, + -0.018480474, + -0.005426648, + 0.015095043, + 0.00044392303, + 0.011271496, + -0.0027548121, + 0.0026884312, + -0.00894816, + -0.015161424, + -0.014975557, + -0.024600804, + 0.004457485, + -0.015519881, + -0.012366783, + -0.012579202, + 0.01478969, + 0.0075541595, + -0.017962702, + -0.0017441611, + -0.014059499, + 0.005499667, + -0.0026884312, + 0.0031929268, + 0.0010853296, + -0.008045379, + 0.017471483, + 0.02590187, + -0.018546855, + -0.007826322, + 0.009333171, + 0.0157323, + 0.000086036016, + 0.004776114, + 0.22155327, + 0.006787459, + -0.0017823302, + 0.024919434, + 0.0023449094, + 0.03210186, + 0.0047329664, + -0.010879848, + 0.0044342517, + 0.015334014, + 0.029499723, + 0.019715162, + -0.008569789, + -0.0018901994, + -0.0077400263, + -0.019210665, + -0.005088105, + -0.023153698, + -0.032739118, + -0.029313855, + 0.00082146504, + -0.0212552, + 0.0044309325, + -0.005446562, + 0.018613236, + -0.009751371, + -0.013023955, + -0.001996409, + 0.01915756, + 0.017431654, + -0.031092867, + -0.0070231115, + 0.025330994, + -0.00018099198, + -0.025131851, + -0.011025886, + 0.0116498675, + -0.02506547, + 0.029234199, + -0.012287126, + 0.0069766445, + 0.0018752636, + 0.014271918, + 0.005108019, + -0.0109064, + 0.014391404, + 0.0062597296, + -0.031411495, + 0.00014935728, + 0.013236375, + -0.02891557, + -0.0006671292, + 0.008662722, + 0.012161002, + 0.020963125, + -0.0133691365, + 0.02653913, + -0.017989255, + 0.007978998, + 0.0093398085, + -0.02024621, + 0.03265946, + -0.02846418, + 0.025397375, + -0.024693737, + -0.0027050264, + -0.019330151, + -0.0104417335, + 0.015626092, + -0.006541849, + 0.004653309, + -0.025118576, + 0.0038268655, + 0.004045923, + -0.017564416, + -0.02444149, + 0.030296294, + 0.028756255, + 0.03927101, + 0.010767001, + -0.012034878, + -0.007122683, + -0.022476612, + -0.034942966, + -0.028411074, + -0.03927101, + -0.0037505273, + -0.0038799702, + -0.00037111135, + -0.009718181, + -0.013455432, + -0.015400395, + -0.0066978442, + -0.010760362, + 0.015121595, + 0.03111942, + 0.007992274, + 0.0270569, + -0.003104972, + 0.010056724, + -0.018414093, + 0.006472149, + 0.021281753, + 0.0043579135, + -0.00021490853, + 0.0008546556, + -0.01269205, + -0.003936394, + 0.0008870163, + 0.0009816092, + 0.0054664765, + -0.031278733, + 0.017245788, + 0.00027734818, + 0.005161124, + 0.0048093046, + -0.003923118, + -0.027149836, + 0.006950092, + -0.00615352, + 0.014205537, + 0.0016620146, + 0.0047396044, + 0.0039994563, + -0.015440224, + -0.0055627287, + -0.026273604, + 0.0013276202, + 0.0021009592, + -0.034810204, + 0.0064522345, + 0.00042608313, + 0.02307404, + -0.005957696, + 0.0016869075, + -0.0032775626, + -0.009041094, + -0.01227385, + -0.04349284, + 0.015652644, + 0.013468708, + -0.0023249951, + -0.011171925, + 0.0030352718, + -0.0061203293, + -0.023153698, + 0.046068422, + -0.005582643, + -0.02405648, + 0.005433286, + -0.02814555, + -0.0036874653, + 0.0067841397, + 0.006628144, + 0.029844904, + -0.0044276137, + -0.029127989, + -0.04548427, + 0.022091601, + 0.0038069512, + -0.030269742, + 0.0051578046, + 0.043572497, + -0.0144843375, + -0.02891557, + -0.010461648, + -0.17375894, + 0.029154541, + 0.019648781, + -0.00038335036, + 0.0029572742, + -0.0026469429, + 0.035925403, + -0.012021601, + 0.0015566348, + -0.0033124126, + 0.0010430117, + -0.010620962, + -0.022582822, + 0.00601412, + 0.008364008, + -0.0016586956, + -0.0011102224, + -0.013860356, + 0.022542993, + 0.020564837, + 0.018414093, + -0.008908332, + 0.032951534, + -0.011908754, + 0.010169571, + -0.011198477, + 0.0029108075, + 0.033084296, + 0.0029008503, + -0.0010015236, + -0.019794818, + 0.005844848, + 0.011669782, + 0.0052208668, + 0.010129742, + 0.0037737607, + 0.02880936, + -0.018599961, + -0.015095043, + 0.026578957, + 0.019662056, + 0.006823968, + -0.00045885876, + -0.019396532, + -0.0047993474, + 0.017192682, + 0.039589636, + -0.00874238, + 0.02146762, + -0.007667007, + 0.018785827, + -0.012758431, + -0.010010257, + -0.02052501, + 0.016090758, + 0.0061867107, + -0.0145507185, + 0.008065294, + 0.0104284575, + -0.0022386997, + -0.008324179, + -0.021640211, + 0.01705992, + -0.010541305, + -0.01639611, + -0.0074413116, + -0.034703992, + 0.007016473, + -0.003083398, + 0.0013691084, + -0.005108019, + -0.007886064, + 0.00053270767, + -0.018865485, + 0.025503585, + 0.005101381, + -0.027534844, + 0.015028661, + -0.009286704, + 0.006233177, + 0.00004343289, + 0.036031615, + 0.00957878, + 0.019250493, + 0.0024411618, + 0.0023664832, + -0.0030269742, + -0.007939169, + 0.0058581247, + 0.00587472, + 0.036589216, + -0.035288148, + -0.012997403, + -0.0110989055, + -0.002492607, + 0.008151589, + -0.008085207, + -0.00734174, + -0.0016802694, + 0.008403837, + -0.007793131, + -0.003913161, + -0.025437204, + 0.027123282, + 0.019330151, + -0.008729103, + 0.003943032, + 0.010289057, + 0.029977666, + 0.0014836156, + -0.024282174, + -0.0024361832, + 0.0110325245, + 0.021719867, + 0.012844726, + 0.015002109, + 0.020737428, + -0.013037231, + 0.014802966, + -0.0027332383, + 0.041634172, + -0.00926679, + -0.018759275, + 0.018666342, + 0.005386819, + -0.008822037, + -0.068399, + -0.054804165, + 0.027800368, + 0.04954679, + -0.00437119, + 0.029127989, + 0.03180978, + 0.021321582, + -0.022503164, + 0.010554581, + -0.006823968, + -0.021387963, + -0.021865906, + -0.0074479496, + 0.0037206558, + 0.004132218, + 0.01073381, + -0.0021673401, + -0.0012819833, + 0.041235887, + -0.010202762, + 0.004839176, + 0.0081715025, + -0.030402504, + -0.023764404, + -0.010800191, + -0.018374264, + 0.033641897, + 0.005416691, + -0.0055096243, + -0.0032775626, + -0.018095464, + 0.008563151, + -0.02339267, + -0.013674489, + 0.0023382711, + -0.028411074, + -0.0024063117, + 0.026658615, + -0.012413249, + 0.009333171, + 0.026446195, + -0.009107475, + -0.024560975, + 0.0011085629, + -0.02395027, + 0.0013857037, + 0.01926377, + -0.0020710877, + -0.031278733, + -0.015095043, + 0.0041720467, + -0.012798259, + 0.010162933, + 0.0063128346, + -0.010972782, + 0.045617033, + 0.016874054, + -0.010368714, + -0.0055992384, + -0.0092999805, + 0.0015782086, + -0.013581555, + 0.017843217, + -0.01615714, + 0.0036575939, + -0.027110007, + -0.013621384, + 0.022197811, + 0.0013964906, + -0.007348378, + 0.0145772705, + -0.003996137, + 0.0008364008, + -0.03411984, + 0.013030593, + -0.021454344, + -0.05034336, + 0.021095887, + -0.0055029863, + -0.025623072, + -0.023525432, + 0.007335102, + -0.043413185, + 0.016316453, + 0.016196968, + 0.0093132565, + -0.0110989055, + 0.0154535, + -0.045218747, + 0.0037737607, + 0.01639611, + 0.019887751, + -0.023366116, + -0.024043202, + 0.014258642, + 0.004271618, + -0.006877073, + 0.021387963, + -0.0019781543, + -0.036350243, + -0.009114114, + -0.037359234, + 0.01919739, + 0.011829097, + -0.015665919, + -0.0015591241, + 0.0144843375, + -0.003139822, + -0.024083031, + -0.015307462, + -0.0040990277, + -0.013223098, + 0.0024278855, + -0.008702551, + -0.0033207103, + -0.009804476, + -0.010554581, + 0.031066315, + 0.0044408897, + 0.025370823, + 0.009406189, + 0.025583243, + -0.002066109, + 0.015267633, + 0.008337456, + -0.009426104, + 0.01590489, + -0.011716249, + 0.007713474, + -0.029552827, + -0.013900184, + 0.0050150855, + -0.01650232, + -0.0015757193, + 0.008549875, + -0.020471904, + 0.008397198, + -0.013136802, + 0.021520725, + 0.0060406723, + 0.012858002, + -0.004723009, + -0.029313855, + 0.009240237, + -0.0212552, + -0.028118998, + 0.017803388, + -0.0314646, + 0.012353507, + 0.029632485, + -0.000016128512, + 0.016966987, + 0.009711542, + -0.037253026, + -0.015095043, + 0.013442155, + -0.00905437, + -0.000982439, + -0.0020495139, + 0.008337456, + -0.020644495, + 0.042085562, + -0.000744712, + 0.021135716, + -0.0072886352, + 0.01643594, + 0.013767422, + -0.0044707614, + -0.014763137, + 0.018852208, + -0.03080079, + -0.0049188333, + 0.0058846767, + 0.008330817, + 0.008257798, + 0.024202518, + 0.02307404, + 0.011065715, + 0.00036053188, + -0.00049412367, + 0.036270585, + 0.027043626, + 0.011902116, + -0.027773816, + 0.013289479, + 0.018374264, + -0.0033157317, + 0.0016636741, + 0.0020677685, + -0.012293763, + 0.008184779, + -0.034252603, + 0.010753725, + 0.008675998, + 0.00968499, + -0.003793675, + -0.011218391, + 0.010375353, + -0.0005737809, + 0.019781543, + 0.020591391, + 0.019954132, + -0.00053976063, + -0.0059444197, + -0.022675755, + -0.010003619, + 0.0038467797, + -0.0212552, + -0.033482585, + -0.015572986, + 0.0037737607, + 0.01451089, + 0.0036376796, + 0.007454588, + 0.013979842, + -0.013402327, + 0.014975557, + -0.010435095, + 0.0151747, + -0.030375952, + 0.023166973, + -0.0024760119, + -0.005881358, + 0.019914305, + -0.008596341, + 0.017737007, + -0.0036111271, + 0.012499545, + -0.02647275, + 0.0053901384, + 0.008556513, + 0.019648781, + 0.00874238, + -0.012439802, + -0.028623493, + -0.022330573, + -0.0029340407, + -0.016303178, + 0.007474502, + -0.016555425, + 0.060645696, + 0.0023631642, + -0.012054792, + 0.017604245, + 0.013103612, + 0.026061187, + 0.015533158, + 0.025742557, + 0.00013753316, + -0.013940013, + 0.02880936, + 0.010109829, + -0.0036111271, + -0.012419888, + -0.045457717, + 0.022835068, + -0.014139156, + 0.007819683, + -0.010461648, + -0.012008325, + 0.008895056, + 0.015984548, + 0.024043202, + -0.00059825886, + -0.0036376796, + -0.007939169, + 0.0242689, + -0.022197811, + -0.026313433, + -0.026724996, + 0.010939592, + 0.0023449094, + -0.012074706, + -0.018493751, + 0.017697178, + -0.0052142288, + -0.00360117, + 0.0056058764, + 0.01070062, + 0.0035248317, + 0.023671469, + 0.030880447, + -0.020299314, + -0.0145905465, + 0.018055636, + -0.013727593, + -0.023313012, + 0.013236375, + -0.0020113448 + ] + } + ], + "usage": { + "prompt_tokens": 4, + "total_tokens": 4 + } + } + } + } +} diff --git a/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_extensions_chat_completions_aml_index.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_extensions_chat_completions_aml_index.json new file mode 100644 index 0000000000000..ad6c219875480 --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/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-02-15-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/OpenAI.Inference/examples/2024-02-15-preview/generated_extensions_chat_completions_azure_search_advanced.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_extensions_chat_completions_azure_search_advanced.json new file mode 100644 index 0000000000000..dfb29d131b46d --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/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-02-15-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/OpenAI.Inference/examples/2024-02-15-preview/generated_extensions_chat_completions_azure_search_image_vector.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_extensions_chat_completions_azure_search_image_vector.json new file mode 100644 index 0000000000000..f8a2ef270e4fb --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/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-02-15-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/OpenAI.Inference/examples/2024-02-15-preview/generated_extensions_chat_completions_azure_search_minimum.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_extensions_chat_completions_azure_search_minimum.json new file mode 100644 index 0000000000000..0b22882c2f0cb --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/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-02-15-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/OpenAI.Inference/examples/2024-02-15-preview/generated_extensions_chat_completions_cosmos_db.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_extensions_chat_completions_cosmos_db.json new file mode 100644 index 0000000000000..12a14f73a834a --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/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-02-15-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/OpenAI.Inference/examples/2024-02-15-preview/generated_extensions_chat_completions_elasticsearch.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_extensions_chat_completions_elasticsearch.json new file mode 100644 index 0000000000000..e9b9e8a0bfbde --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/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-02-15-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/OpenAI.Inference/examples/2024-02-15-preview/generated_extensions_chat_completions_pinecone.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_extensions_chat_completions_pinecone.json new file mode 100644 index 0000000000000..f49bcf26a4543 --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/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-02-15-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/OpenAI.Inference/examples/2024-02-15-preview/generated_image_generation.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_image_generation.json new file mode 100644 index 0000000000000..50cdc4fc671c0 --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/generated_image_generation.json @@ -0,0 +1,31 @@ +{ + "operationId": "GetImageGenerations", + "title": "Creates images given a prompt.", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-02-15-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/OpenAI.Inference/examples/2024-02-15-preview/get_image_operation_status.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/get_image_operation_status.json new file mode 100644 index 0000000000000..b568a4344464d --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/get_image_operation_status.json @@ -0,0 +1,27 @@ +{ + "operationId": "GetAzureBatchImageGenerationOperationStatus", + "title": "Returns the status of the images operation", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-02-15-preview", + "operationId": "" + }, + "responses": { + "200": { + "body": { + "created": 1686676595, + "expires": 1686762999, + "id": "", + "result": { + "created": 1686676595, + "data": [ + { + "url": "https://image/path" + } + ] + }, + "status": "succeeded" + } + } + } +} diff --git a/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/start_generate_image.json b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/start_generate_image.json new file mode 100644 index 0000000000000..2046405e3e889 --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/examples/2024-02-15-preview/start_generate_image.json @@ -0,0 +1,25 @@ +{ + "operationId": "BeginAzureBatchImageGeneration", + "title": "Starts the generation of a batch of images from a text caption", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-02-15-preview", + "body": { + "prompt": "a monkey eating a banana", + "size": "256x256", + "n": 1 + } + }, + "responses": { + "202": { + "headers": { + "operation-location": "{endpoint}/openai/operations/images/?api-version=2023-06-01-preview" + }, + "body": { + "id": "", + "status": "notRunning", + "created": 0 + } + } + } +} diff --git a/specification/cognitiveservices/OpenAI.Inference/main.tsp b/specification/cognitiveservices/OpenAI.Inference/main.tsp index 89f22a7a99c89..f071f0db160a9 100644 --- a/specification/cognitiveservices/OpenAI.Inference/main.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/main.tsp @@ -2,6 +2,7 @@ import "@typespec/http"; import "@typespec/versioning"; import "./routes/common.tsp"; +import "./routes/audio_speech.tsp"; import "./routes/audio_transcription.tsp"; import "./routes/audio_translation.tsp"; import "./routes/completions.tsp"; @@ -54,11 +55,5 @@ enum ServiceApiVersions { v2023_07_01_Preview: "2023-07-01-preview", @useDependency(Azure.Core.Versions.v1_0_Preview_1) - v2023_08_01_Preview: "2023-08-01-preview", - - @useDependency(Azure.Core.Versions.v1_0_Preview_1) - v2023_09_01_Preview: "2023-09-01-preview", - - @useDependency(Azure.Core.Versions.v1_0_Preview_1) - v2023_12_01_Preview: "2023-12-01-preview", + v2024_02_15_Preview: "2024-02-15-preview", } diff --git a/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_speech.tsp b/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_speech.tsp new file mode 100644 index 0000000000000..ea84b2ccd5116 --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_speech.tsp @@ -0,0 +1,86 @@ +import "@typespec/versioning"; +import "@typespec/http"; + +using TypeSpec.Versioning; +using TypeSpec.Http; + +namespace Azure.OpenAI; + +@doc("The available voices for text-to-speech.") +@added(ServiceApiVersions.v2024_02_15_Preview) +enum SpeechVoice { + @doc("The Alloy voice.") + alloy: "alloy", + + @doc("The Echo voice.") + echo: "echo", + + @doc("The Fable voice.") + fable: "fable", + + @doc("The Onyx voice.") + onyx: "onyx", + + @doc("The Nova voice.") + nova: "nova", + + @doc("The Shimmer voice.") + shimmer: "shimmer", +} + +@doc("The supported audio output formats for text-to-speech.") +@added(ServiceApiVersions.v2024_02_15_Preview) +enum SpeechGenerationResponseFormat { + @doc("Use MP3 as the audio output format. MP3 is the default, general-purpose format.") + mp3: "mp3", + + @doc("Use Opus as the audio output format. Opus is optimized for internet streaming and low latency.") + opus: "opus", + + @doc("Use AAC as the audio output format. AAC is optimized for digital audio compression and is preferred by YouTube, Android, and iOS.") + aac: "aac", + + @doc("Use FLAC as the audio output format. FLAC is a fully lossless format optimized for maximum quality at the expense of size.") + flac: "flac", +} + +@doc("A representation of the request options that control the behavior of a text-to-speech operation.") +@added(ServiceApiVersions.v2024_02_15_Preview) +model SpeechGenerationOptions { + @doc("The text to generate audio for. The maximum length is 4096 characters.") + @maxLength(4096) + input: string; + + @doc("The voice to use for text-to-speech.") + voice: SpeechVoice; + + @doc("The audio output format for the spoken text. By default, the MP3 format will be used.") + @encodedName("application/json", "response_format") + responseFormat?: SpeechGenerationResponseFormat = SpeechGenerationResponseFormat.mp3; + + @doc("The speed of speech for generated audio. Values are valid in the range from 0.25 to 4.0, with 1.0 the default and higher values corresponding to faster speech.") + @minValue(0.25) + @maxValue(4.0) + speed?: float32 = 1.0; + + @doc(""" + The model to use for this text-to-speech request. + """) + // Implementation note: developer-facing specification of deployment or model by clients should be controlled either + // via an operation parameter or by this request body field -- but only one of those. This field should be hidden by + // clients if operation parameters are used and populated into the request body on an as-needed basis. + @projectedName("csharp", "DeploymentName") + `model`?: string; +} + +@doc("A representation of a response for a text-to-speech operation.") +@added(ServiceApiVersions.v2024_02_15_Preview) +model SpeechGenerationResponse { + @doc("The content type of the response. Always application/octet-stream for audio/speech responses.") + @header + contentType: "application/octet-stream"; + + @doc("The generated audio, generated in the requested audio output format.") + @body + audio: bytes; +} diff --git a/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_transcription.tsp b/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_transcription.tsp index 536752d25067a..225507f110304 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_transcription.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_transcription.tsp @@ -6,7 +6,7 @@ namespace Azure.OpenAI; using TypeSpec.Versioning; @doc("Defines available options for the underlying response format of output transcription information.") -@added(ServiceApiVersions.v2023_09_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) enum AudioTranscriptionFormat { @doc("Use a response body that is a JSON object containing a single 'text' field for the transcription.") json: "json", @@ -32,7 +32,7 @@ enum AudioTranscriptionFormat { @doc(""" The configuration information for an audio transcription request. """) -@added(ServiceApiVersions.v2023_09_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model AudioTranscriptionOptions { @doc(""" The audio data to transcribe. This must be the binary content of a file in one of the supported media formats: @@ -89,7 +89,7 @@ Extended information about a single segment of transcribed audio data. Segments generally represent roughly 5-10 seconds of speech. Segment boundaries typically occur between words but not necessarily sentences. """) -@added(ServiceApiVersions.v2023_09_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model AudioTranscriptionSegment { @doc("The 0-based index of this segment within a transcription.") id: int32; @@ -136,7 +136,7 @@ model AudioTranscriptionSegment { } @doc("Result information for an operation that transcribed spoken audio into written text.") -@added(ServiceApiVersions.v2023_09_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model AudioTranscription { @doc("The transcribed text for the provided audio data.") text: string; diff --git a/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_translation.tsp b/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_translation.tsp index 113f78a8899c0..a2f591d303ed9 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_translation.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/audio/audio_translation.tsp @@ -6,7 +6,7 @@ namespace Azure.OpenAI; using TypeSpec.Versioning; @doc("Defines available options for the underlying response format of output translation information.") -@added(ServiceApiVersions.v2023_09_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) enum AudioTranslationFormat { @doc("Use a response body that is a JSON object containing a single 'text' field for the translation.") json: "json", @@ -32,7 +32,7 @@ enum AudioTranslationFormat { @doc(""" The configuration information for an audio translation request. """) -@added(ServiceApiVersions.v2023_09_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model AudioTranslationOptions { @doc(""" The audio data to translate. This must be the binary content of a file in one of the supported media formats: @@ -82,7 +82,7 @@ Extended information about a single segment of translated audio data. Segments generally represent roughly 5-10 seconds of speech. Segment boundaries typically occur between words but not necessarily sentences. """) -@added(ServiceApiVersions.v2023_09_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model AudioTranslationSegment { @doc("The 0-based index of this segment within a translation.") id: int32; @@ -129,7 +129,7 @@ model AudioTranslationSegment { } @doc("Result information for an operation that translated spoken audio into written text.") -@added(ServiceApiVersions.v2023_09_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model AudioTranslation { @doc("The translated text for the provided audio data.") text: string; diff --git a/specification/cognitiveservices/OpenAI.Inference/models/audio/common.tsp b/specification/cognitiveservices/OpenAI.Inference/models/audio/common.tsp index dc1b20b52821d..bd0a92ac95591 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/audio/common.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/audio/common.tsp @@ -7,7 +7,7 @@ using TypeSpec.Http; using TypeSpec.Versioning; @doc("Defines the possible descriptors for available audio operation responses.") -@added(ServiceApiVersions.v2023_09_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) enum AudioTaskLabel { @doc("Accompanying response data resulted from an audio transcription task.") transcribe: "transcribe", diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/azure_chat_extensions.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/azure_chat_extensions.tsp index fd9071fbdcfba..598fb95ffe682 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/azure_chat_extensions.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/azure_chat_extensions.tsp @@ -1,7 +1,7 @@ import "@typespec/versioning"; import "./chat_completions.tsp"; import "./chat_messages.tsp"; -import "./extensions/oyd/azure_cognitive_search_options.tsp"; +import "./extensions/oyd/azure_search_options.tsp"; import "./extensions/oyd/azure_machinelearning_index_options.tsp"; import "./extensions/oyd/azure_cosmosdb_options.tsp"; import "./extensions/oyd/elasticsearch_options.tsp"; @@ -11,35 +11,31 @@ namespace Azure.OpenAI; using TypeSpec.Versioning; -@added(ServiceApiVersions.v2023_08_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" 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 AzureChatExtensionType { - @doc("Represents the use of Azure Cognitive Search as an Azure OpenAI chat extension.") - azureCognitiveSearch: "AzureCognitiveSearch", + @doc("Represents the use of Azure AI Search as an Azure OpenAI chat extension.") + azureSearch: "azure_search", - @added(ServiceApiVersions.v2023_12_01_Preview) @doc("Represents the use of Azure Machine Learning index as an Azure OpenAI chat extension.") - azureMachineLearningIndex: "AzureMLIndex", + azureMachineLearningIndex: "azure_ml_index", - @added(ServiceApiVersions.v2023_12_01_Preview) @doc("Represents the use of Azure Cosmos DB as an Azure OpenAI chat extension.") - azureCosmosDB: "AzureCosmosDB", + azureCosmosDB: "azure_cosmos_db", - @added(ServiceApiVersions.v2023_12_01_Preview) @doc("Represents the use of Elasticsearch® index as an Azure OpenAI chat extension.") - elasticsearch: "Elasticsearch", + elasticsearch: "elasticsearch", - @added(ServiceApiVersions.v2023_12_01_Preview) @doc("Represents the use of Pinecone index as an Azure OpenAI chat extension.") - pinecone: "Pinecone", + pinecone: "pinecone", } @discriminator("type") -@added(ServiceApiVersions.v2023_08_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" 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. @@ -53,7 +49,7 @@ model AzureChatExtensionConfiguration { type: AzureChatExtensionType; } -@added(ServiceApiVersions.v2023_08_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" 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 @@ -61,15 +57,42 @@ model AzureChatExtensionConfiguration { """) model AzureChatExtensionsMessageContext { @doc(""" - The contextual message payload associated with the Azure chat extensions used for a chat completions request. + The contextual information associated with the Azure chat extensions used for a chat completions request. These messages describe the data source retrievals, plugin invocations, and other intermediate steps taken in the course of generating a chat completions response that was augmented by capabilities from Azure OpenAI chat extensions. """) - messages?: ChatResponseMessage[]; + citations?: AzureChatExtensionDataSourceResponseCitation[]; + + @doc("The detected intent from the chat history, used to pass to the next turn to carry over the context.") + intent?: string; +} + +@added(ServiceApiVersions.v2024_02_15_Preview) +@doc(""" +A single instance of 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. +""") +model AzureChatExtensionDataSourceResponseCitation { + @doc("The content of the citation.") + content: string; + + @doc("The title of the citation.") + title?: string; + + @doc("The URL of the citation.") + url?: string; + + @doc("The file path of the citation.") + filepath?: string; + + #suppress "@azure-tools/typespec-azure-core/casing-style" "OpenAI uses wire-format snake_casing" + @doc("The chunk ID of the citation.") + chunk_id?: string; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("A representation of the available options for the Azure OpenAI grounding enhancement.") model AzureChatGroundingEnhancementConfiguration { @doc("Specifies whether the enhancement is enabled.") @@ -77,14 +100,14 @@ model AzureChatGroundingEnhancementConfiguration { } #suppress "@azure-tools/typespec-azure-core/casing-style" "established industry acronym" -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("A representation of the available options for the Azure OpenAI optical character recognition (OCR) enhancement.") model AzureChatOCREnhancementConfiguration { @doc("Specifies whether the enhancement is enabled.") enabled: boolean; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("A representation of the available Azure OpenAI enhancement configurations.") model AzureChatEnhancementConfiguration { @doc("A representation of the available options for the Azure OpenAI grounding enhancement.") @@ -94,7 +117,7 @@ model AzureChatEnhancementConfiguration { ocr?: AzureChatOCREnhancementConfiguration; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" Represents the output results of Azure enhancements to chat completions, as configured via the matching input provided in the request. @@ -104,14 +127,14 @@ model AzureChatEnhancements { grounding?: AzureGroundingEnhancement; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("The grounding enhancement that returns the bounding box of the objects detected in the image.") model AzureGroundingEnhancement { @doc("The lines of text detected by the grounding enhancement.") lines: AzureGroundingEnhancementLine[]; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("A content line object consisting of an adjacent sequence of content elements, such as words and selection marks.") model AzureGroundingEnhancementLine { @doc("The text within the line.") @@ -121,7 +144,7 @@ model AzureGroundingEnhancementLine { spans: AzureGroundingEnhancementLineSpan[]; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("A span object that represents a detected object and its bounding box information.") model AzureGroundingEnhancementLineSpan { @doc("The text content of the span that represents the detected object.") @@ -140,7 +163,7 @@ model AzureGroundingEnhancementLineSpan { polygon: AzureGroundingEnhancementCoordinatePoint[]; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("A representation of a single polygon point as used by the Azure grounding enhancement.") model AzureGroundingEnhancementCoordinatePoint { @doc("The x-coordinate (horizontal axis) of the point.") diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/azure_content_filtering.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/azure_content_filtering.tsp index 3a0f2c06aa796..4c09067a5feef 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/azure_content_filtering.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/azure_content_filtering.tsp @@ -13,30 +13,30 @@ namespace Azure.OpenAI; @doc("Ratings for the intensity and risk level of harmful content.") enum ContentFilterSeverity { @doc(""" - Content may be related to violence, self-harm, sexual, or hate categories but the terms - are used in general, journalistic, scientific, medical, and similar professional contexts, + Content may be related to violence, self-harm, sexual, or hate categories but the terms + are used in general, journalistic, scientific, medical, and similar professional contexts, which are appropriate for most audiences. """) safe: "safe", @doc(""" - Content that expresses prejudiced, judgmental, or opinionated views, includes offensive + Content that expresses prejudiced, judgmental, or opinionated views, includes offensive use of language, stereotyping, use cases exploring a fictional world (for example, gaming, literature) and depictions at low intensity. """) low: "low", @doc(""" - Content that uses offensive, insulting, mocking, intimidating, or demeaning language - towards specific identity groups, includes depictions of seeking and executing harmful + Content that uses offensive, insulting, mocking, intimidating, or demeaning language + towards specific identity groups, includes depictions of seeking and executing harmful instructions, fantasies, glorification, promotion of harm at medium intensity. """) medium: "medium", @doc(""" - Content that displays explicit and severe harmful instructions, actions, - damage, or abuse; includes endorsement, glorification, or promotion of severe - harmful acts, extreme or illegal forms of harm, radicalization, or non-consensual + Content that displays explicit and severe harmful instructions, actions, + damage, or abuse; includes endorsement, glorification, or promotion of severe + harmful acts, extreme or illegal forms of harm, radicalization, or non-consensual power exchange or abuse. """) high: "high", @@ -55,21 +55,21 @@ model ContentFilterResult { alias ContentFilterResultsBase = { @doc(""" Describes language related to anatomical organs and genitals, romantic relationships, - acts portrayed in erotic or affectionate terms, physical sexual acts, including - those portrayed as an assault or a forced sexual violent act against one’s will, + acts portrayed in erotic or affectionate terms, physical sexual acts, including + those portrayed as an assault or a forced sexual violent act against one’s will, prostitution, pornography, and abuse. """) sexual?: ContentFilterResult; @doc(""" - Describes language related to physical actions intended to hurt, injure, damage, or + Describes language related to physical actions intended to hurt, injure, damage, or kill someone or something; describes weapons, etc. """) violence?: ContentFilterResult; @doc(""" - Describes language attacks or uses that include pejorative or discriminatory language - with reference to a person or identity group on the basis of certain differentiating + Describes language attacks or uses that include pejorative or discriminatory language + with reference to a person or identity group on the basis of certain differentiating attributes of these groups including but not limited to race, ethnicity, nationality, gender identity and expression, sexual orientation, religion, immigration status, ability status, personal appearance, and body size. @@ -83,11 +83,11 @@ alias ContentFilterResultsBase = { @encodedName("application/json", "self_harm") selfHarm?: ContentFilterResult; - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @doc("Describes whether profanity was detected.") profanity?: ContentFilterDetectionResult; - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @encodedName("application/json", "custom_blocklists") @doc("Describes detection results against configured custom blocklists.") customBlocklists?: ContentFilterBlocklistIdResult[]; @@ -105,7 +105,7 @@ model ContentFilterResultDetailsForPrompt { ...ContentFilterResultsBase; @doc("Whether a jailbreak attempt was detected in the prompt.") - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) jailbreak?: ContentFilterDetectionResult; } @@ -114,12 +114,12 @@ model ContentFilterResultDetailsForPrompt { model ContentFilterResultsForChoice { ...ContentFilterResultsBase; - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @encodedName("application/json", "protected_material_text") @doc("Information about detection of protected text material.") protectedMaterialText?: ContentFilterDetectionResult; - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @encodedName("application/json", "protected_material_code") @doc("Information about detection of protected code material.") protectedMaterialCode?: ContentFilterCitedDetectionResult; @@ -139,7 +139,7 @@ model ContentFilterResultsForPrompt { contentFilterResults: ContentFilterResultDetailsForPrompt; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("Represents the outcome of a detection operation performed by content filtering.") model ContentFilterDetectionResult { @doc("A value indicating whether or not the content has been filtered.") @@ -150,7 +150,7 @@ model ContentFilterDetectionResult { } @doc("Represents the outcome of a detection operation against protected resources as performed by content filtering.") -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model ContentFilterCitedDetectionResult { ...ContentFilterDetectionResult; @@ -163,7 +163,7 @@ model ContentFilterCitedDetectionResult { } @doc("Represents the outcome of an evaluation against a custom blocklist as performed by content filtering.") -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model ContentFilterBlocklistIdResult { @doc("The ID of the custom blocklist evaluated.") id: string; diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/chat_completions.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/chat_completions.tsp index 2aa9f37b49ffe..efc7783dfb562 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/chat_completions.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/chat_completions.tsp @@ -15,7 +15,7 @@ using TypeSpec.Versioning; namespace Azure.OpenAI; -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" An abstract representation of a response format configuration usable by Chat Completions. Can be used to enable JSON mode. @@ -30,7 +30,7 @@ model ChatCompletionsResponseFormat { The standard Chat Completions response format that can freely generate text and is not guaranteed to produce response content that adheres to a specific schema. """) -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model ChatCompletionsTextResponseFormat extends ChatCompletionsResponseFormat { @doc("The discriminated object type, which is always 'text' for this format.") type: "text"; @@ -39,7 +39,7 @@ model ChatCompletionsTextResponseFormat extends ChatCompletionsResponseFormat { @doc(""" A response format for Chat Completions that restricts responses to emitting valid JSON objects. """) -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model ChatCompletionsJsonResponseFormat extends ChatCompletionsResponseFormat { @doc("The discriminated object type, which is always 'json_object' for this format.") type: "json_object"; @@ -62,7 +62,6 @@ model ChatCompletionsOptions { @doc("A list of functions the model may generate JSON inputs for.") @added(ServiceApiVersions.v2023_07_01_Preview) - @removed(ServiceApiVersions.v2023_12_01_Preview) functions?: FunctionDefinition[]; @doc(""" @@ -73,7 +72,6 @@ model ChatCompletionsOptions { """) @encodedName("application/json", "function_call") @added(ServiceApiVersions.v2023_07_01_Preview) - @removed(ServiceApiVersions.v2023_12_01_Preview) functionCall?: FunctionCallConfig; @doc("The maximum number of tokens to generate.") @@ -174,15 +172,16 @@ model ChatCompletionsOptions { // the array were in an appropriate parent JSON object on the wire) and type/field names should converge on // "extensions" instead of "data sources" for representing the additional configuration information. A future // service API version will absorb these proposed changes and allow us to retire the extra complexity. - @added(ServiceApiVersions.v2023_08_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) + @encodedName("application/json", "data_sources") @projectedName("csharp", "InternalAzureExtensionsDataSources") dataSources?: AzureChatExtensionConfiguration[]; - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @doc("If provided, the configuration options for available Azure OpenAI chat enhancements.") enhancements?: AzureChatEnhancementConfiguration; - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" If specified, the 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 @@ -190,17 +189,32 @@ model ChatCompletionsOptions { """) seed?: int64; + #suppress "@azure-tools/typespec-azure-core/no-nullable" "OpenAI uses explicitly nullable types" + @added(ServiceApiVersions.v2024_02_15_Preview) + @doc(""" + Whether to return log probabilities of the output tokens or not. If true, returns the log probabilities of each output token returned in the `content` of `message`. This option is currently not available on the `gpt-4-vision-preview` model. + """) + logprobs?: boolean | null = false; + + #suppress "@azure-tools/typespec-azure-core/casing-style" "OpenAI uses wire-format snake_casing" + #suppress "@azure-tools/typespec-azure-core/no-nullable" "OpenAI uses explicitly required, nullable types" + @added(ServiceApiVersions.v2024_02_15_Preview) + @doc(""" + An integer between 0 and 5 specifying the number of most likely tokens to return at each token position, each with an associated log probability. `logprobs` must be set to `true` if this parameter is used. + """) + top_logprobs?: int32 | null; + @encodedName("application/json", "response_format") - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @doc("An object specifying the format that the model must output. Used to enable JSON mode.") responseFormat?: ChatCompletionsResponseFormat; - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @doc("The available tool definitions that the chat completions request can use, including caller-defined functions.") tools?: ChatCompletionsToolDefinition[]; @encodedName("application/json", "tool_choice") - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" If specified, the model will configure which of the provided tools it can use for the chat completions response. """) @@ -217,10 +231,15 @@ model ChatChoice { @doc("The chat message for a given chat completions prompt.") message?: ChatResponseMessage; + #suppress "@azure-tools/typespec-azure-core/no-nullable" "OpenAI uses explicitly required, nullable types" + @added(ServiceApiVersions.v2024_02_15_Preview) + @doc("The log probability information for this choice, as enabled via the 'logprobs' request option.") + logprobs: ChatChoiceLogProbabilityInfo | null; + @doc("The ordered index associated with this chat completions choice.") index: int32; - #suppress "@azure-tools/typespec-azure-core/no-nullable" "The operation already returns nulls" + #suppress "@azure-tools/typespec-azure-core/no-nullable" "OpenAI uses explicitly required, nullable types" #suppress "@azure-tools/typespec-autorest/union-unsupported" "OpenAPI v2 support deferred" @doc("The reason that this chat completions choice completed its generated.") @encodedName("application/json", "finish_reason") @@ -231,7 +250,7 @@ model ChatChoice { The reason the model stopped generating tokens, together with any applicable details. This structured representation replaces 'finish_reason' for some models. """) - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @encodedName("application/json", "finish_details") finishDetails?: ChatFinishDetails; @@ -248,7 +267,7 @@ model ChatChoice { @encodedName("application/json", "content_filter_results") contentFilterResults?: ContentFilterResultsForChoice; - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" Represents the output results of Azure OpenAI enhancements to chat completions, as configured via the matching input provided in the request. This supplementary information is only available when using Azure OpenAI and only when the @@ -290,7 +309,7 @@ model ChatCompletions { @encodedName("application/json", "prompt_filter_results") promptFilterResults?: ContentFilterResultsForPrompt[]; - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @encodedName("application/json", "system_fingerprint") @doc(""" Can be used in conjunction with the `seed` request parameter to understand when backend changes have been made that @@ -304,7 +323,7 @@ model ChatCompletions { usage: CompletionsUsage; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @discriminator("type") @doc("An abstract representation of structured information about why a chat completions response terminated.") model ChatFinishDetails { @@ -313,7 +332,7 @@ model ChatFinishDetails { } @doc("A structured representation of a stop reason that signifies natural termination by the model.") -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model StopFinishDetails extends ChatFinishDetails { @doc("The object type, which is always 'stop' for this object.") type: "stop"; @@ -326,8 +345,51 @@ model StopFinishDetails extends ChatFinishDetails { A structured representation of a stop reason that signifies a token limit was reached before the model could naturally complete. """) -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model MaxTokensFinishDetails extends ChatFinishDetails { @doc("The object type, which is always 'max_tokens' for this object.") type: "max_tokens"; } + +@added(ServiceApiVersions.v2024_02_15_Preview) +@doc(""" +Log probability information for a choice, as requested via 'logprobs' and 'top_logprobs'. +""") +model ChatChoiceLogProbabilityInfo { + #suppress "@azure-tools/typespec-azure-core/no-nullable" "OpenAI uses explicitly required, nullable types" + @doc(""" + The list of log probability information entries for the choice's message content tokens, as requested via the 'logprobs' option. + """) + content: ChatTokenLogProbabilityResult[] | null; +} + +@added(ServiceApiVersions.v2024_02_15_Preview) +@doc(""" +A representation of the log probability information for a single content token, including a list of most likely tokens if 'top_logprobs' were requested. +""") +model ChatTokenLogProbabilityResult { + ...ChatTokenLogProbabilityInfo; + + #suppress "@azure-tools/typespec-azure-core/no-nullable" "OpenAI uses explicitly required, nullable types" + #suppress "@azure-tools/typespec-azure-core/casing-style" "OpenAI uses wire-format snake_casing" + @doc("The list of most likely tokens and their log probability information, as requested via 'top_logprobs'.") + top_logprobs: ChatTokenLogProbabilityInfo[] | null; +} + +@added(ServiceApiVersions.v2024_02_15_Preview) +@doc(""" +A representation of the log probability information for a single message content token. +""") +model ChatTokenLogProbabilityInfo { + @doc("The message content token.") + token: string; + + @doc("The log probability of the message content token.") + logprob: float32; + + #suppress "@azure-tools/typespec-azure-core/no-nullable" "OpenAI uses explicitly required, nullable types" + @doc(""" + 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. + """) + bytes: int32[] | null; +} diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/chat_messages.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/chat_messages.tsp index e07cad33c8db7..1a4c8bf7dfe94 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/chat_messages.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/chat_messages.tsp @@ -16,7 +16,7 @@ namespace Azure.OpenAI; #suppress "@azure-tools/typespec-autorest/union-unsupported" "External API shape is defined in OpenAPI 3.0 as oneOf." alias ChatMessageContent = string | ChatMessageContentItem[]; -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("An abstract representation of a structured content item within a chat message.") @discriminator("type") model ChatMessageContentItem { @@ -24,7 +24,7 @@ model ChatMessageContentItem { type: string; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("A structured chat content item containing plain text.") model ChatMessageTextContentItem extends ChatMessageContentItem { @doc("The discriminated object type: always 'text' for this type.") @@ -34,7 +34,7 @@ model ChatMessageTextContentItem extends ChatMessageContentItem { text: string; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("A representation of the possible image detail levels for image-based chat completions message content.") enum ChatMessageImageDetailLevel { @doc("Specifies that the model should determine which detail level to apply using heuristics like image size.") @@ -53,7 +53,7 @@ enum ChatMessageImageDetailLevel { high: "high", } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("A structured chat content item containing an image reference.") model ChatMessageImageContentItem extends ChatMessageContentItem { @doc("The discriminated object type: always 'image_url' for this type.") @@ -65,7 +65,7 @@ model ChatMessageImageContentItem extends ChatMessageContentItem { } @doc("An internet location from which the model may retrieve an image.") -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model ChatMessageImageUrl { @doc("The URL of the image.") url: url; @@ -128,7 +128,7 @@ model ChatRequestAssistantMessage extends ChatRequestMessage { name?: string; @encodedName("application/json", "tool_calls") - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" The tool calls that must be resolved and have their outputs appended to subsequent input messages for the chat completions request to resolve as configured. @@ -136,7 +136,6 @@ model ChatRequestAssistantMessage extends ChatRequestMessage { toolCalls?: ChatCompletionsToolCall[]; @added(ServiceApiVersions.v2023_07_01_Preview) - @removed(ServiceApiVersions.v2023_12_01_Preview) @encodedName("application/json", "function_call") @doc(""" The function call that must be resolved and have its output appended to subsequent input messages for the chat @@ -145,7 +144,7 @@ model ChatRequestAssistantMessage extends ChatRequestMessage { functionCall?: FunctionCall; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("A request chat message representing requested output from a configured tool.") model ChatRequestToolMessage extends ChatRequestMessage { @doc("The chat role associated with this message, which is always 'tool' for tool messages.") @@ -161,7 +160,6 @@ model ChatRequestToolMessage extends ChatRequestMessage { } @added(ServiceApiVersions.v2023_07_01_Preview) -@removed(ServiceApiVersions.v2023_12_01_Preview) @doc("A request chat message representing requested output from a configured function.") model ChatRequestFunctionMessage extends ChatRequestMessage { @doc("The chat role associated with this message, which is always 'function' for function messages.") @@ -185,7 +183,7 @@ model ChatResponseMessage { @doc("The content of the message.") content: string | null; - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @encodedName("application/json", "tool_calls") @doc(""" The tool calls that must be resolved and have their outputs appended to subsequent input messages for the chat @@ -201,7 +199,7 @@ model ChatResponseMessage { """) functionCall?: FunctionCall; - @added(ServiceApiVersions.v2023_08_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" If Azure OpenAI chat extensions are configured, this array represents the incremental steps performed by those extensions while processing the chat completions request. diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/common.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/common.tsp index b510324ec2445..7d66cfa0bb6ba 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/common.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/common.tsp @@ -45,7 +45,7 @@ enum CompletionsFinishReason { functionCall: "function_call", @doc("Completion ended with the model calling a provided tool for output.") - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) toolCalls: "tool_calls", } @@ -65,6 +65,6 @@ enum ChatRole { function: "function", @doc("The role that represents extension tool activity within a chat completions operation.") - @added(ServiceApiVersions.v2023_08_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) tool: "tool", } diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/completions_create.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/completions_create.tsp index 4d8cd96cd0d7f..efa7ff4f43a27 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/completions_create.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/completions_create.tsp @@ -79,6 +79,9 @@ model CompletionsOptions { @projectedName("csharp", "LogProbabilityCount") logprobs?: int32; + @doc("The suffix that comes after a completion of inserted text") + suffix?: string; + @doc(""" A value specifying whether completions responses should include input prompts as prefixes to their generated output. diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/authentication.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/authentication.tsp index 46bd8786c3c55..81d8bf093891d 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/authentication.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/authentication.tsp @@ -7,33 +7,33 @@ using TypeSpec.Versioning; @doc(""" The authentication types supported with Azure OpenAI On Your Data. """) -@added(ServiceApiVersions.v2023_08_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) enum OnYourDataAuthenticationType { @doc("Authentication via API key.") - apiKey: "APIKey", + apiKey: "api_key", @doc("Authentication via connection string.") - connectionString: "ConnectionString", + connectionString: "connection_string", @doc("Authentication via key and key ID pair.") - keyAndKeyId: "KeyAndKeyId", + keyAndKeyId: "key_and_key_id", @doc("Authentication via encoded API key.") - encodedApiKey: "EncodedAPIKey", + encodedApiKey: "encoded_api_key", @doc("Authentication via access token.") - accessToken: "AccessToken", + accessToken: "access_token", @doc("Authentication via system-assigned managed identity.") - systemAssignedManagedIdentity: "SystemAssignedManagedIdentity", + systemAssignedManagedIdentity: "system_assigned_managed_identity", @doc("Authentication via user-assigned managed identity.") - userAssignedManagedIdentity: "UserAssignedManagedIdentity", + userAssignedManagedIdentity: "user_assigned_managed_identity", } @discriminator("type") @doc("The authentication options for Azure OpenAI On Your Data.") -@added(ServiceApiVersions.v2023_08_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model OnYourDataAuthenticationOptions { @doc("The authentication type.") type: OnYourDataAuthenticationType; @@ -42,7 +42,7 @@ model OnYourDataAuthenticationOptions { @doc(""" The authentication options for Azure OpenAI On Your Data when using an API key. """) -@added(ServiceApiVersions.v2023_08_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model OnYourDataApiKeyAuthenticationOptions extends OnYourDataAuthenticationOptions { @doc("The authentication type of API key.") @@ -55,20 +55,21 @@ model OnYourDataApiKeyAuthenticationOptions @doc(""" The authentication options for Azure OpenAI On Your Data when using a connection string. """) -@added(ServiceApiVersions.v2023_08_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model OnYourDataConnectionStringAuthenticationOptions extends OnYourDataAuthenticationOptions { @doc("The authentication type of connection string.") type: OnYourDataAuthenticationType.connectionString; @doc("The connection string to use for authentication.") + @encodedName("application/json", "connection_string") connectionString: string; } @doc(""" The authentication options for Azure OpenAI On Your Data when using an Elasticsearch key and key ID pair. """) -@added(ServiceApiVersions.v2023_08_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model OnYourDataKeyAndKeyIdAuthenticationOptions extends OnYourDataAuthenticationOptions { @doc("The authentication type of Elasticsearch key and key ID pair.") @@ -78,39 +79,42 @@ model OnYourDataKeyAndKeyIdAuthenticationOptions key: string; @doc("The key ID to use for authentication.") + @encodedName("application/json", "key_id") keyId: string; } @doc(""" The authentication options for Azure OpenAI On Your Data when using an Elasticsearch encoded API key. """) -@added(ServiceApiVersions.v2023_08_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model OnYourDataEncodedApiKeyAuthenticationOptions extends OnYourDataAuthenticationOptions { @doc("The authentication type of Elasticsearch encoded API Key.") type: OnYourDataAuthenticationType.encodedApiKey; @doc("The encoded API key to use for authentication.") + @encodedName("application/json", "encoded_api_key") encodedApiKey: string; } @doc(""" The authentication options for Azure OpenAI On Your Data when using access token. """) -@added(ServiceApiVersions.v2023_08_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model OnYourDataAccessTokenAuthenticationOptions extends OnYourDataAuthenticationOptions { @doc("The authentication type of access token.") type: OnYourDataAuthenticationType.accessToken; @doc("The access token to use for authentication.") + @encodedName("application/json", "access_token") accessToken: string; } @doc(""" The authentication options for Azure OpenAI On Your Data when using a system-assigned managed identity. """) -@added(ServiceApiVersions.v2023_08_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model OnYourDataSystemAssignedManagedIdentityAuthenticationOptions extends OnYourDataAuthenticationOptions { @doc("The authentication type of system-assigned managed identity.") @@ -120,12 +124,13 @@ model OnYourDataSystemAssignedManagedIdentityAuthenticationOptions @doc(""" The authentication options for Azure OpenAI On Your Data when using a user-assigned managed identity. """) -@added(ServiceApiVersions.v2023_08_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model OnYourDataUserAssignedManagedIdentityAuthenticationOptions extends OnYourDataAuthenticationOptions { @doc("The authentication type of user-assigned managed identity.") type: OnYourDataAuthenticationType.userAssignedManagedIdentity; @doc("The resource ID of the user-assigned managed identity to use for authentication.") + @encodedName("application/json", "managed_identity_resource_id") managedIdentityResourceId: string; } diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/azure_cosmosdb_options.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/azure_cosmosdb_options.tsp index b940c30827843..f841261be76f0 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/azure_cosmosdb_options.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/azure_cosmosdb_options.tsp @@ -8,7 +8,7 @@ namespace Azure.OpenAI; using TypeSpec.Versioning; #suppress "@azure-tools/typespec-azure-core/casing-style" "this represents the case-sensitive wire format" -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" A specific representation of configurable options for Azure Cosmos DB when using it as an Azure OpenAI chat extension. @@ -26,7 +26,7 @@ model AzureCosmosDBChatExtensionConfiguration } #suppress "@azure-tools/typespec-azure-core/casing-style" "this represents the case-sensitive wire format" -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" Parameters to use when configuring Azure OpenAI On Your Data chat extensions when using Azure Cosmos DB for MongoDB vCore. The supported authentication type is ConnectionString. @@ -36,49 +36,60 @@ model AzureCosmosDBChatExtensionParameters { @doc("The MongoDB vCore database name to use with Azure Cosmos DB.") @projectedName("csharp", "DatabaseName") + @encodedName("application/json", "database_name") databaseName: string; @doc("The name of the Azure Cosmos DB resource container.") @projectedName("csharp", "ContainerName") + @encodedName("application/json", "container_name") containerName: string; @doc("The MongoDB vCore index name to use with Azure Cosmos DB.") @projectedName("csharp", "IndexName") + @encodedName("application/json", "index_name") indexName: string; @doc("Customized field mapping behavior to use when interacting with the search index.") @projectedName("csharp", "FieldMappingOptions") + @encodedName("application/json", "fields_mapping") fieldsMapping: AzureCosmosDBFieldMappingOptions; @doc("The embedding dependency for vector search.") + @encodedName("application/json", "embedding_dependency") embeddingDependency: OnYourDataVectorizationSource; } #suppress "@azure-tools/typespec-azure-core/casing-style" "this represents the case-sensitive wire format" @doc("Optional settings to control how fields are processed when using a configured Azure Cosmos DB resource.") -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model AzureCosmosDBFieldMappingOptions { @doc("The name of the index field to use as a title.") @projectedName("csharp", "TitleFieldName") + @encodedName("application/json", "title_field") titleField?: string; @doc("The name of the index field to use as a URL.") @projectedName("csharp", "UrlFieldName") + @encodedName("application/json", "url_field") urlField?: string; @doc("The name of the index field to use as a filepath.") @projectedName("csharp", "FilepathFieldName") + @encodedName("application/json", "filepath_field") filepathField?: string; @doc("The names of index fields that should be treated as content.") @projectedName("csharp", "ContentFieldNames") + @encodedName("application/json", "content_fields") contentFields: string[]; @doc("The separator pattern that content fields should use.") @projectedName("csharp", "ContentFieldSeparator") + @encodedName("application/json", "content_fields_separator") contentFieldsSeparator?: string; @doc("The names of fields that represent vector data.") @projectedName("csharp", "VectorFieldNames") + @encodedName("application/json", "vector_fields") vectorFields: string[]; } diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/azure_machinelearning_index_options.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/azure_machinelearning_index_options.tsp index 368adc73c1ef9..edb6ea689a5c2 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/azure_machinelearning_index_options.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/azure_machinelearning_index_options.tsp @@ -6,7 +6,7 @@ namespace Azure.OpenAI; using TypeSpec.Versioning; -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" A specific representation of configurable options for Azure Machine Learning vector index when using it as an Azure OpenAI chat extension. @@ -23,13 +23,14 @@ model AzureMachineLearningIndexChatExtensionConfiguration parameters: AzureMachineLearningIndexChatExtensionParameters; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("Parameters for the Azure Machine Learning vector index chat extension. The supported authentication types are AccessToken, SystemAssignedManagedIdentity and UserAssignedManagedIdentity.") model AzureMachineLearningIndexChatExtensionParameters { ...OnYourDataCommonChatExtensionConfiguration; @doc("The resource ID of the Azure Machine Learning project.") @projectedName("csharp", "ProjectResourceId") + @encodedName("application/json", "project_resource_id") projectResourceId: string; @doc("The Azure Machine Learning vector index name.") diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/azure_cognitive_search_options.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/azure_search_options.tsp similarity index 58% rename from specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/azure_cognitive_search_options.tsp rename to specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/azure_search_options.tsp index 83ff77ac430dd..aeb3c3121984f 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/azure_cognitive_search_options.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/azure_search_options.tsp @@ -7,27 +7,26 @@ namespace Azure.OpenAI; using TypeSpec.Versioning; -@added(ServiceApiVersions.v2023_08_01_Preview) @doc(""" -A specific representation of configurable options for Azure Cognitive Search when using it as an Azure OpenAI chat +A specific representation of configurable options for Azure Search when using it as an Azure OpenAI chat extension. """) -@added(ServiceApiVersions.v2023_08_01_Preview) -model AzureCognitiveSearchChatExtensionConfiguration +@added(ServiceApiVersions.v2024_02_15_Preview) +model AzureSearchChatExtensionConfiguration extends AzureChatExtensionConfiguration { @doc(""" The type label to use when configuring Azure OpenAI chat extensions. This should typically not be changed from its default value for Azure Cognitive Search. """) - type: AzureChatExtensionType.azureCognitiveSearch; + type: AzureChatExtensionType.azureSearch; - @doc("The parameters to use when configuring Azure Cognitive Search.") - parameters: AzureCognitiveSearchChatExtensionParameters; + @doc("The parameters to use when configuring Azure Search.") + parameters: AzureSearchChatExtensionParameters; } -@added(ServiceApiVersions.v2023_08_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("Parameters for Azure Cognitive Search when used as an Azure OpenAI chat extension. The supported authentication types are APIKey, SystemAssignedManagedIdentity and UserAssignedManagedIdentity.") -model AzureCognitiveSearchChatExtensionParameters { +model AzureSearchChatExtensionParameters { ...OnYourDataCommonChatExtensionConfiguration; @doc("The absolute endpoint path for the Azure Cognitive Search resource to use.") @@ -35,79 +34,74 @@ model AzureCognitiveSearchChatExtensionParameters { endpoint: url; @doc("The name of the index to use as available in the referenced Azure Cognitive Search resource.") + @encodedName("application/json", "index_name") indexName: string; - @doc("The API key to use when interacting with the Azure Cognitive Search resource.") - @added(ServiceApiVersions.v2023_08_01_Preview) - @removed(ServiceApiVersions.v2023_12_01_Preview) - key?: string; - @doc("Customized field mapping behavior to use when interacting with the search index.") @projectedName("csharp", "FieldMappingOptions") - fieldsMapping?: AzureCognitiveSearchIndexFieldMappingOptions; + @encodedName("application/json", "fields_mapping") + fieldsMapping?: AzureSearchIndexFieldMappingOptions; @doc("The query type to use with Azure Cognitive Search.") - queryType?: AzureCognitiveSearchQueryType; + @encodedName("application/json", "query_type") + queryType?: AzureSearchQueryType; @doc("The additional semantic configuration for the query.") + @encodedName("application/json", "semantic_configuration") semanticConfiguration?: string; @doc("Search filter.") filter?: string; - @doc("When using embeddings for search, specifies the resource endpoint URL from which embeddings should be retrieved. It should be in the format of format https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/embeddings?api-version={api-version}.") - @added(ServiceApiVersions.v2023_08_01_Preview) - @removed(ServiceApiVersions.v2023_12_01_Preview) - embeddingEndpoint?: url; - - @added(ServiceApiVersions.v2023_08_01_Preview) - @removed(ServiceApiVersions.v2023_12_01_Preview) - @doc("When using embeddings, specifies the API key to use with the provided embeddings endpoint.") - embeddingKey?: string; - - @added(ServiceApiVersions.v2023_12_01_Preview) @doc("The embedding dependency for vector search.") + @encodedName("application/json", "embedding_dependency") embeddingDependency?: OnYourDataVectorizationSource; } -@doc("Optional settings to control how fields are processed when using a configured Azure Cognitive Search resource.") -@added(ServiceApiVersions.v2023_08_01_Preview) -model AzureCognitiveSearchIndexFieldMappingOptions { +@doc("Optional settings to control how fields are processed when using a configured Azure Search resource.") +@added(ServiceApiVersions.v2024_02_15_Preview) +model AzureSearchIndexFieldMappingOptions { @doc("The name of the index field to use as a title.") @projectedName("csharp", "TitleFieldName") + @encodedName("application/json", "title_field") titleField?: string; @doc("The name of the index field to use as a URL.") @projectedName("csharp", "UrlFieldName") + @encodedName("application/json", "url_field") urlField?: string; @doc("The name of the index field to use as a filepath.") @projectedName("csharp", "FilepathFieldName") + @encodedName("application/json", "filepath_field") filepathField?: string; @doc("The names of index fields that should be treated as content.") @projectedName("csharp", "ContentFieldNames") + @encodedName("application/json", "content_fields") contentFields?: string[]; @doc("The separator pattern that content fields should use.") @projectedName("csharp", "ContentFieldSeparator") + @encodedName("application/json", "content_fields_separator") contentFieldsSeparator?: string; @doc("The names of fields that represent vector data.") @projectedName("csharp", "VectorFieldNames") + @encodedName("application/json", "vector_fields") vectorFields?: string[]; - @added(ServiceApiVersions.v2023_12_01_Preview) @doc("The names of fields that represent image vector data.") @projectedName("csharp", "ImageVectorFieldNames") + @encodedName("application/json", "image_vector_fields") imageVectorFields?: string[]; } @doc(""" -The type of Azure Cognitive Search retrieval query that should be executed when using it as an Azure OpenAI chat extension. +The type of Azure Search retrieval query that should be executed when using it as an Azure OpenAI chat extension. """) -@added(ServiceApiVersions.v2023_08_01_Preview) -enum AzureCognitiveSearchQueryType { +@added(ServiceApiVersions.v2024_02_15_Preview) +enum AzureSearchQueryType { @doc("Represents the default, simple query parser.") simple: "simple", @@ -118,8 +112,8 @@ enum AzureCognitiveSearchQueryType { vector: "vector", @doc("Represents a combination of the simple query strategy with vector data.") - vectorSimpleHybrid: "vectorSimpleHybrid", + vectorSimpleHybrid: "vector_simple_hybrid", @doc("Represents a combination of semantic search and vector data querying.") - vectorSemanticHybrid: "vectorSemanticHybrid", + vectorSemanticHybrid: "vector_semantic_hybrid", } diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/common_options.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/common_options.tsp index 5184cd4e457a1..a696072222c08 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/common_options.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/common_options.tsp @@ -20,10 +20,12 @@ alias OnYourDataCommonChatExtensionConfiguration = { #suppress "@azure-tools/typespec-azure-core/casing-style" "this represents the case-sensitive wire format" @doc("The configured top number of documents to feature for the configured query.") @projectedName("csharp", "DocumentCount") + @encodedName("application/json", "top_n_documents") topNDocuments?: int32; @doc("Whether queries should be restricted to use of indexed data.") @projectedName("csharp", "ShouldRestrictResultScope") + @encodedName("application/json", "in_scope") inScope?: boolean; @doc("The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.") @@ -32,5 +34,6 @@ alias OnYourDataCommonChatExtensionConfiguration = { strictness?: int32; @doc("Give the model instructions about how it should behave and any context it should reference when generating a response. You can describe the assistant's personality and tell it how to format responses. There's a 100 token limit for it, and it counts against the overall token limit.") + @encodedName("application/json", "role_information") roleInformation?: string; }; diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/elasticsearch_options.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/elasticsearch_options.tsp index 4d433e91cb5d4..0219b444d312e 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/elasticsearch_options.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/elasticsearch_options.tsp @@ -6,7 +6,7 @@ namespace Azure.OpenAI; using TypeSpec.Versioning; -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" A specific representation of configurable options for Elasticsearch when using it as an Azure OpenAI chat extension. @@ -23,7 +23,7 @@ model ElasticsearchChatExtensionConfiguration parameters: ElasticsearchChatExtensionParameters; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("Parameters to use when configuring Elasticsearch® as an Azure OpenAI chat extension. The supported authentication types are KeyAndKeyId and EncodedAPIKey.") model ElasticsearchChatExtensionParameters { ...OnYourDataCommonChatExtensionConfiguration; @@ -32,51 +32,61 @@ model ElasticsearchChatExtensionParameters { endpoint: url; @doc("The index name of Elasticsearch®.") + @encodedName("application/json", "index_name") indexName: string; @doc("The index field mapping options of Elasticsearch®.") @projectedName("csharp", "FieldMappingOptions") + @encodedName("application/json", "fields_mapping") fieldsMapping?: ElasticsearchIndexFieldMappingOptions; @doc("The query type of Elasticsearch®.") + @encodedName("application/json", "query_type") queryType?: ElasticsearchQueryType; @doc("The embedding dependency for vector search.") + @encodedName("application/json", "embedding_dependency") embeddingDependency?: OnYourDataVectorizationSource; } @doc("Optional settings to control how fields are processed when using a configured Elasticsearch® resource.") -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model ElasticsearchIndexFieldMappingOptions { @doc("The name of the index field to use as a title.") @projectedName("csharp", "TitleFieldName") + @encodedName("application/json", "title_field") titleField?: string; @doc("The name of the index field to use as a URL.") @projectedName("csharp", "UrlFieldName") + @encodedName("application/json", "url_field") urlField?: string; @doc("The name of the index field to use as a filepath.") @projectedName("csharp", "FilepathFieldName") + @encodedName("application/json", "filepath_field") filepathField?: string; @doc("The names of index fields that should be treated as content.") @projectedName("csharp", "ContentFieldNames") + @encodedName("application/json", "content_fields") contentFields?: string[]; @doc("The separator pattern that content fields should use.") @projectedName("csharp", "ContentFieldSeparator") + @encodedName("application/json", "content_fields_separator") contentFieldsSeparator?: string; @doc("The names of fields that represent vector data.") @projectedName("csharp", "VectorFieldNames") + @encodedName("application/json", "vector_fields") vectorFields?: string[]; } @doc(""" The type of Elasticsearch® retrieval query that should be executed when using it as an Azure OpenAI chat extension. """) -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) enum ElasticsearchQueryType { @doc("Represents the default, simple query parser.") simple: "simple", diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/pinecone_options.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/pinecone_options.tsp index 6ebb9f2069d13..94143569851fa 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/pinecone_options.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/pinecone_options.tsp @@ -8,7 +8,7 @@ namespace Azure.OpenAI; using TypeSpec.Versioning; #suppress "@azure-tools/typespec-azure-core/casing-style" "this represents the case-sensitive wire format" -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" A specific representation of configurable options for Pinecone when using it as an Azure OpenAI chat extension. @@ -25,7 +25,7 @@ model PineconeChatExtensionConfiguration parameters: PineconeChatExtensionParameters; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("Parameters for configuring Azure OpenAI Pinecone chat extensions. The supported authentication type is APIKey.") model PineconeChatExtensionParameters { ...OnYourDataCommonChatExtensionConfiguration; @@ -35,36 +35,44 @@ model PineconeChatExtensionParameters { environment: string; @doc("The name of the Pinecone database index.") + @encodedName("application/json", "index_name") indexName: string; @doc("Customized field mapping behavior to use when interacting with the search index.") @projectedName("csharp", "FieldMappingOptions") + @encodedName("application/json", "fields_mapping") fieldsMapping: PineconeFieldMappingOptions; @doc("The embedding dependency for vector search.") + @encodedName("application/json", "embedding_dependency") embeddingDependency: OnYourDataVectorizationSource; } @doc("Optional settings to control how fields are processed when using a configured Pinecone resource.") -@added(ServiceApiVersions.v2023_08_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model PineconeFieldMappingOptions { @doc("The name of the index field to use as a title.") @projectedName("csharp", "TitleFieldName") + @encodedName("application/json", "title_field") titleField?: string; @doc("The name of the index field to use as a URL.") @projectedName("csharp", "UrlFieldName") + @encodedName("application/json", "url_field") urlField?: string; @doc("The name of the index field to use as a filepath.") @projectedName("csharp", "FilepathFieldName") + @encodedName("application/json", "filepath_field") filepathField?: string; @doc("The names of index fields that should be treated as content.") @projectedName("csharp", "ContentFieldNames") + @encodedName("application/json", "content_fields") contentFields: string[]; @doc("The separator pattern that content fields should use.") @projectedName("csharp", "ContentFieldSeparator") + @encodedName("application/json", "content_fields_separator") contentFieldsSeparator?: string; } diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/vector_search.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/vector_search.tsp index 7136d8f1f62bf..49760322e6620 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/vector_search.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/extensions/oyd/vector_search.tsp @@ -5,7 +5,7 @@ namespace Azure.OpenAI; using TypeSpec.Versioning; -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" Represents the available sources Azure OpenAI On Your Data can use to configure vectorization of data for use with vector search. @@ -14,23 +14,23 @@ enum OnYourDataVectorizationSourceType { @doc(""" Represents vectorization performed by public service calls to an Azure OpenAI embedding model. """) - endpoint: "Endpoint", + endpoint: "endpoint", @doc(""" 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. """) - deploymentName: "DeploymentName", + deploymentName: "deployment_name", @doc(""" Represents a specific embedding model ID as defined in the search service. Currently only supported by Elasticsearch®. """) - modelId: "ModelId", + modelId: "model_id", } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @discriminator("type") @doc("An abstract representation of a vectorization source for Azure OpenAI On Your Data with vector search.") model OnYourDataVectorizationSource { @@ -38,7 +38,7 @@ model OnYourDataVectorizationSource { type: OnYourDataVectorizationSourceType; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" 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. @@ -55,7 +55,7 @@ model OnYourDataEndpointVectorizationSource authentication: OnYourDataAuthenticationOptions; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" 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. @@ -66,10 +66,11 @@ model OnYourDataDeploymentNameVectorizationSource type: OnYourDataVectorizationSourceType.deploymentName; @doc("The embedding model deployment name within the same Azure OpenAI resource. This enables you to use vector search without Azure OpenAI api-key and without Azure OpenAI public network access.") + @encodedName("application/json", "deployment_name") deploymentName: string; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" 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®. @@ -80,5 +81,6 @@ model OnYourDataModelIdVectorizationSource type: OnYourDataVectorizationSourceType.modelId; @doc("The embedding model ID build inside the search service. Currently only supported by Elasticsearch®.") + @encodedName("application/json", "model_id") modelId: string; } diff --git a/specification/cognitiveservices/OpenAI.Inference/models/completions/tools.tsp b/specification/cognitiveservices/OpenAI.Inference/models/completions/tools.tsp index a7d973b150526..17eff35d8277c 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/completions/tools.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/completions/tools.tsp @@ -10,7 +10,7 @@ using TypeSpec.Versioning; #suppress "@azure-tools/typespec-autorest/union-unsupported" "External API shape is defined in OpenAPI 3.0 as oneOf." alias ChatCompletionsToolSelection = ChatCompletionsToolSelectionPreset | ChatCompletionsNamedToolSelection; -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("Represents a generic policy for how a chat completions tool may be selected.") enum ChatCompletionsToolSelectionPreset { @doc(""" @@ -33,7 +33,7 @@ model ChatCompletionsNamedToolSelection { type: string; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("A tool selection of a specific, named function tool that will limit chat completions to using the named function.") model ChatCompletionsNamedFunctionToolSelection extends ChatCompletionsNamedToolSelection { @@ -44,7 +44,7 @@ model ChatCompletionsNamedFunctionToolSelection function: ChatCompletionsFunctionToolSelection; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc("A tool selection of a specific, named function tool that will limit chat completions to using the named function.") model ChatCompletionsFunctionToolSelection { @doc("The name of the function that should be called.") @@ -55,13 +55,13 @@ model ChatCompletionsFunctionToolSelection { @discriminator("type") @doc("An abstract representation of a tool that can be used by the model to improve a chat completions response.") -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model ChatCompletionsToolDefinition { @doc("The object type.") type: string; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" The definition information for a chat completions function tool that can call a function in response to a tool call. """) @@ -81,7 +81,7 @@ model ChatCompletionsFunctionToolDefinition An abstract representation of a tool call that must be resolved in a subsequent request to perform the requested chat completion. """) -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) model ChatCompletionsToolCall { @doc("The object type.") type: string; @@ -90,7 +90,7 @@ model ChatCompletionsToolCall { id: string; } -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @doc(""" A tool call to a function tool, issued by the model in evaluation of a configured function tool, that represents a function invocation needed for a subsequent chat completions request to resolve. diff --git a/specification/cognitiveservices/OpenAI.Inference/models/embeddings_create.tsp b/specification/cognitiveservices/OpenAI.Inference/models/embeddings_create.tsp index 92a39c23bb70a..8cb5f535d05da 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/embeddings_create.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/embeddings_create.tsp @@ -1,8 +1,10 @@ import "@typespec/rest"; import "@typespec/http"; +import "@typespec/versioning"; using TypeSpec.Rest; using TypeSpec.Http; +using TypeSpec.Versioning; namespace Azure.OpenAI; @@ -34,6 +36,11 @@ model EmbeddingsOptions { as we have observed inferior results when newlines are present. """) input: string[]; + + @doc("When using Azure OpenAI, specifies the input type to use for embedding search.") + @added(ServiceApiVersions.v2024_02_15_Preview) + @encodedName("application/json", "input_type") + inputType?: string; } @doc(""" diff --git a/specification/cognitiveservices/OpenAI.Inference/models/images/common.tsp b/specification/cognitiveservices/OpenAI.Inference/models/images/common.tsp index e83ed5132c43a..ee416c2875d40 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/images/common.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/images/common.tsp @@ -10,7 +10,7 @@ namespace Azure.OpenAI; @lroStatus @doc("The state of a job or item.") -@removed(ServiceApiVersions.v2023_12_01_Preview) +@removed(ServiceApiVersions.v2024_02_15_Preview) enum AzureOpenAIOperationState { @doc("The operation was created and is queued to be processed in the future.") notRunning, @@ -35,7 +35,7 @@ enum AzureOpenAIOperationState { @Foundations.Private.needsRoute @post @doc("Long running operation template to match Azure OpenAI .") -@removed(ServiceApiVersions.v2023_12_01_Preview) +@removed(ServiceApiVersions.v2024_02_15_Preview) op OaiLongRunningRpcOperation< TParams extends TypeSpec.Reflection.Model, TResponse extends TypeSpec.Reflection.Model, diff --git a/specification/cognitiveservices/OpenAI.Inference/models/images/images.tsp b/specification/cognitiveservices/OpenAI.Inference/models/images/images.tsp index 200c97d3ee7f3..0806eb8d1fd7b 100644 --- a/specification/cognitiveservices/OpenAI.Inference/models/images/images.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/models/images/images.tsp @@ -3,6 +3,7 @@ import "@typespec/http"; import "@typespec/versioning"; import "./common.tsp"; +import "../completions/azure_content_filtering.tsp"; using Azure.Core; using TypeSpec.Http; @@ -29,21 +30,21 @@ enum ImageSize { A standard, square image size of 1024x1024 pixels. Supported by both dall-e-2 and dall-e-3 models. """) - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) size1024x1024: "1024x1024", @doc(""" A wider image size of 1024x1792 pixels. Only supported with dall-e-3 models. """) - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) size1792x1024: "1792x1024", @doc(""" A taller image size of 1792x1024 pixels. Only supported with dall-e-3 models. """) - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) size1024x1792: "1024x1792", } @@ -51,7 +52,7 @@ enum ImageSize { An image generation configuration that specifies how the model should prioritize quality, cost, and speed. Only configurable with dall-e-3 models. """) -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) enum ImageGenerationQuality { @doc(""" Requests image generation with standard, balanced characteristics of quality, cost, and speed. @@ -68,7 +69,7 @@ enum ImageGenerationQuality { An image generation configuration that specifies how the model should incorporate realism and other visual characteristics. Only configurable with dall-e-3 models. """) -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) enum ImageGenerationStyle { @doc(""" Requests image generation in a natural style with less preference for dramatic and hyper-realistic characteristics. @@ -127,20 +128,66 @@ model ImageGenerationOptions { The desired image generation quality level to use. Only configurable with dall-e-3 models. """) - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) quality?: ImageGenerationQuality = ImageGenerationQuality.standard; @doc(""" The desired image generation style to use. Only configurable with dall-e-3 models. """) - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) style?: ImageGenerationStyle = ImageGenerationStyle.vivid; @doc("A unique identifier representing your end-user, which can help to monitor and detect abuse.") user?: string; } +@doc("Describes the content filtering result for the image generation request.") +@added(ServiceApiVersions.v2024_02_15_Preview) +model ImageGenerationContentFilterResults { + @doc(""" + Describes language related to anatomical organs and genitals, romantic relationships, + acts portrayed in erotic or affectionate terms, physical sexual acts, including + those portrayed as an assault or a forced sexual violent act against one’s will, + prostitution, pornography, and abuse. + """) + sexual?: ContentFilterResult; + + @doc(""" + Describes language related to physical actions intended to hurt, injure, damage, or + kill someone or something; describes weapons, etc. + """) + violence?: ContentFilterResult; + + @doc(""" + Describes language attacks or uses that include pejorative or discriminatory language + with reference to a person or identity group on the basis of certain differentiating + attributes of these groups including but not limited to race, ethnicity, nationality, + gender identity and expression, sexual orientation, religion, immigration status, ability + status, personal appearance, and body size. + """) + hate?: ContentFilterResult; + + @doc(""" + Describes language related to physical actions intended to purposely hurt, injure, + or damage one’s body, or kill oneself. + """) + @encodedName("application/json", "self_harm") + selfHarm?: ContentFilterResult; +} + +@doc("Describes the content filtering results for the prompt of a image generation request.") +@added(ServiceApiVersions.v2024_02_15_Preview) +model ImageGenerationPromptFilterResults { + ...ImageGenerationContentFilterResults; + + @doc("Describes whether profanity was detected.") + profanity?: ContentFilterDetectionResult; + + @doc("Whether a jailbreak attempt was detected in the prompt.") + jailbreak?: ContentFilterDetectionResult; +} + @doc(""" A representation of a single generated image, provided as either base64-encoded data or as a URL from which the image may be retrieved. @@ -154,13 +201,30 @@ model ImageGenerationData { @encodedName("application/json", "b64_json") base64Data?: string; + @doc("Information about the content filtering results.") + @added(ServiceApiVersions.v2024_02_15_Preview) + @encodedName("application/json", "content_filter_results") + contentFilterResults?: ImageGenerationContentFilterResults; + @doc(""" The final prompt used by the model to generate the image. Only provided with dall-3-models and only when revisions were made to the prompt. """) - @added(ServiceApiVersions.v2023_12_01_Preview) + @added(ServiceApiVersions.v2024_02_15_Preview) @encodedName("application/json", "revised_prompt") revisedPrompt?: string; + + @doc(""" + Information about the content filtering category (hate, sexual, violence, self_harm), if + it has been detected, as well as the severity level (very_low, low, medium, high-scale + that determines the intensity and risk level of harmful content) and if it has been + filtered or not. 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. + """) + @added(ServiceApiVersions.v2024_02_15_Preview) + @encodedName("application/json", "prompt_filter_results") + promptFilterResults?: ImageGenerationPromptFilterResults; } @doc("The result of a successful image generation operation.") @@ -190,7 +254,7 @@ model ImageGenerations { //@lroStatus @doc("A polling status update or final response payload for an image operation.") @added(ServiceApiVersions.v2023_06_01_Preview) -@removed(ServiceApiVersions.v2023_12_01_Preview) +@removed(ServiceApiVersions.v2024_02_15_Preview) model BatchImageGenerationOperationResponse { @doc("The ID of the operation.") id: string; diff --git a/specification/cognitiveservices/OpenAI.Inference/routes/audio_speech.tsp b/specification/cognitiveservices/OpenAI.Inference/routes/audio_speech.tsp new file mode 100644 index 0000000000000..0d456088cd1f4 --- /dev/null +++ b/specification/cognitiveservices/OpenAI.Inference/routes/audio_speech.tsp @@ -0,0 +1,25 @@ +import "@azure-tools/typespec-azure-core"; +import "@typespec/http"; +import "@typespec/rest"; +import "@typespec/versioning"; + +import "../models/audio/audio_speech.tsp"; +import "./common.tsp"; + +using TypeSpec.Http; +using TypeSpec.Rest; +using TypeSpec.Versioning; + +using Azure.Core; + +namespace Azure.OpenAI; + +@doc("Generates text-to-speech audio from the input text.") +@added(ServiceApiVersions.v2024_02_15_Preview) +@action("audio/speech") +@actionSeparator("/") +op generateSpeechFromText is ResourceAction< + Deployment, + SpeechGenerationOptions, + SpeechGenerationResponse +>; diff --git a/specification/cognitiveservices/OpenAI.Inference/routes/audio_transcription.tsp b/specification/cognitiveservices/OpenAI.Inference/routes/audio_transcription.tsp index c4bfb3b06b63f..217c057596588 100644 --- a/specification/cognitiveservices/OpenAI.Inference/routes/audio_transcription.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/routes/audio_transcription.tsp @@ -22,7 +22,7 @@ namespace Azure.OpenAI; Gets transcribed text and associated metadata from provided spoken audio data. Audio will be transcribed in the written language corresponding to the language it was spoken in. """) -@added(ServiceApiVersions.v2023_09_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @actionSeparator("/") @action("audio/transcriptions") @sharedRoute @@ -38,7 +38,7 @@ op getAudioTranscriptionAsPlainText is Azure.Core.ResourceAction< Gets transcribed text and associated metadata from provided spoken audio data. Audio will be transcribed in the written language corresponding to the language it was spoken in. """) -@added(ServiceApiVersions.v2023_09_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @actionSeparator("/") @action("audio/transcriptions") @sharedRoute diff --git a/specification/cognitiveservices/OpenAI.Inference/routes/audio_translation.tsp b/specification/cognitiveservices/OpenAI.Inference/routes/audio_translation.tsp index 568bd34a17457..8c2b8adb55624 100644 --- a/specification/cognitiveservices/OpenAI.Inference/routes/audio_translation.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/routes/audio_translation.tsp @@ -21,7 +21,7 @@ namespace Azure.OpenAI; @doc(""" Gets English language transcribed text and associated metadata from provided spoken audio data. """) -@added(ServiceApiVersions.v2023_09_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @actionSeparator("/") @action("audio/translations") @sharedRoute @@ -36,7 +36,7 @@ op getAudioTranslationAsPlainText is Azure.Core.ResourceAction< @doc(""" Gets English language transcribed text and associated metadata from provided spoken audio data. """) -@added(ServiceApiVersions.v2023_09_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @actionSeparator("/") @action("audio/translations") @sharedRoute diff --git a/specification/cognitiveservices/OpenAI.Inference/routes/completions.tsp b/specification/cognitiveservices/OpenAI.Inference/routes/completions.tsp index 1a95a59afc54f..823f980fcde76 100644 --- a/specification/cognitiveservices/OpenAI.Inference/routes/completions.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/routes/completions.tsp @@ -40,21 +40,3 @@ op getChatCompletions is ResourceAction< ChatCompletionsOptions, ChatCompletions >; - -@doc(""" -Gets chat completions for the provided chat messages. -This is an Azure-specific version of chat completions that supports integration with configured data sources and -other augmentations to the base chat completions capabilities. -""") -// Note: client libraries should abstract the existence of this as a distinct REST route and instead perform dynamic -// selection of the appropriate request URL structure based on the presence or non-presence of matching -// chat extensions configuration in the request options model. Future service API versions may merge this -// capability into the standard /chat/completions route. -@added(ServiceApiVersions.v2023_08_01_Preview) -@actionSeparator("/") -@action("extensions/chat/completions") -op getChatCompletionsWithAzureExtensions is ResourceAction< - Deployment, - ChatCompletionsOptions, - ChatCompletions ->; diff --git a/specification/cognitiveservices/OpenAI.Inference/routes/images.tsp b/specification/cognitiveservices/OpenAI.Inference/routes/images.tsp index f7f5026db4137..0f09b3f185bc5 100644 --- a/specification/cognitiveservices/OpenAI.Inference/routes/images.tsp +++ b/specification/cognitiveservices/OpenAI.Inference/routes/images.tsp @@ -15,7 +15,7 @@ using Azure.Core; namespace Azure.OpenAI; @doc("Creates an image given a prompt.") -@added(ServiceApiVersions.v2023_12_01_Preview) +@added(ServiceApiVersions.v2024_02_15_Preview) @actionSeparator("/") @action("images/generations") op getImageGenerations is Azure.Core.ResourceAction< @@ -33,7 +33,7 @@ op getImageGenerations is Azure.Core.ResourceAction< #suppress "@azure-tools/typespec-azure-core/no-rpc-path-params" "Allowed because this is a non-standard status polling operation." @doc("Returns the status of the images operation") @added(ServiceApiVersions.v2023_06_01_Preview) -@removed(ServiceApiVersions.v2023_12_01_Preview) +@removed(ServiceApiVersions.v2024_02_15_Preview) @route("/operations/images/{operationId}") op getAzureBatchImageGenerationOperationStatus is RpcOperation< { @@ -45,7 +45,7 @@ op getAzureBatchImageGenerationOperationStatus is RpcOperation< #suppress "@azure-tools/typespec-azure-core/use-standard-operations" "" @doc("Starts the generation of a batch of images from a text caption") @added(ServiceApiVersions.v2023_06_01_Preview) -@removed(ServiceApiVersions.v2023_12_01_Preview) +@removed(ServiceApiVersions.v2024_02_15_Preview) @route("/images/generations:submit") @pollingOperation( getAzureBatchImageGenerationOperationStatus, diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/generated.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/generated.json index 3f188ba6762ad..98e10aafb9299 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/generated.json +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-06-01-preview/generated.json @@ -953,6 +953,10 @@ "format": "int32", "description": "A value that controls the emission of log probabilities for the provided number of most likely\ntokens within a completions response." }, + "suffix": { + "type": "string", + "description": "The suffix that comes after a completion of inserted text" + }, "echo": { "type": "boolean", "description": "A value specifying whether completions responses should include input prompts as prefixes to\ntheir generated output." @@ -1048,15 +1052,15 @@ "properties": { "sexual": { "$ref": "#/definitions/ContentFilterResult", - "description": "Describes language related to anatomical organs and genitals, romantic relationships,\n acts portrayed in erotic or affectionate terms, physical sexual acts, including \n those portrayed as an assault or a forced sexual violent act against one’s will, \n prostitution, pornography, and abuse." + "description": "Describes language related to anatomical organs and genitals, romantic relationships,\n acts portrayed in erotic or affectionate terms, physical sexual acts, including\n those portrayed as an assault or a forced sexual violent act against one’s will,\n prostitution, pornography, and abuse." }, "violence": { "$ref": "#/definitions/ContentFilterResult", - "description": "Describes language related to physical actions intended to hurt, injure, damage, or \nkill someone or something; describes weapons, etc." + "description": "Describes language related to physical actions intended to hurt, injure, damage, or\nkill someone or something; describes weapons, etc." }, "hate": { "$ref": "#/definitions/ContentFilterResult", - "description": "Describes language attacks or uses that include pejorative or discriminatory language \nwith reference to a person or identity group on the basis of certain differentiating \nattributes of these groups including but not limited to race, ethnicity, nationality,\ngender identity and expression, sexual orientation, religion, immigration status, ability\nstatus, personal appearance, and body size." + "description": "Describes language attacks or uses that include pejorative or discriminatory language\nwith reference to a person or identity group on the basis of certain differentiating\nattributes of these groups including but not limited to race, ethnicity, nationality,\ngender identity and expression, sexual orientation, religion, immigration status, ability\nstatus, personal appearance, and body size." }, "self_harm": { "$ref": "#/definitions/ContentFilterResult", @@ -1075,15 +1079,15 @@ "properties": { "sexual": { "$ref": "#/definitions/ContentFilterResult", - "description": "Describes language related to anatomical organs and genitals, romantic relationships,\n acts portrayed in erotic or affectionate terms, physical sexual acts, including \n those portrayed as an assault or a forced sexual violent act against one’s will, \n prostitution, pornography, and abuse." + "description": "Describes language related to anatomical organs and genitals, romantic relationships,\n acts portrayed in erotic or affectionate terms, physical sexual acts, including\n those portrayed as an assault or a forced sexual violent act against one’s will,\n prostitution, pornography, and abuse." }, "violence": { "$ref": "#/definitions/ContentFilterResult", - "description": "Describes language related to physical actions intended to hurt, injure, damage, or \nkill someone or something; describes weapons, etc." + "description": "Describes language related to physical actions intended to hurt, injure, damage, or\nkill someone or something; describes weapons, etc." }, "hate": { "$ref": "#/definitions/ContentFilterResult", - "description": "Describes language attacks or uses that include pejorative or discriminatory language \nwith reference to a person or identity group on the basis of certain differentiating \nattributes of these groups including but not limited to race, ethnicity, nationality,\ngender identity and expression, sexual orientation, religion, immigration status, ability\nstatus, personal appearance, and body size." + "description": "Describes language attacks or uses that include pejorative or discriminatory language\nwith reference to a person or identity group on the basis of certain differentiating\nattributes of these groups including but not limited to race, ethnicity, nationality,\ngender identity and expression, sexual orientation, religion, immigration status, ability\nstatus, personal appearance, and body size." }, "self_harm": { "$ref": "#/definitions/ContentFilterResult", @@ -1133,22 +1137,22 @@ { "name": "safe", "value": "safe", - "description": "Content may be related to violence, self-harm, sexual, or hate categories but the terms \nare used in general, journalistic, scientific, medical, and similar professional contexts, \nwhich are appropriate for most audiences." + "description": "Content may be related to violence, self-harm, sexual, or hate categories but the terms\nare used in general, journalistic, scientific, medical, and similar professional contexts,\nwhich are appropriate for most audiences." }, { "name": "low", "value": "low", - "description": "Content that expresses prejudiced, judgmental, or opinionated views, includes offensive \nuse of language, stereotyping, use cases exploring a fictional world (for example, gaming,\nliterature) and depictions at low intensity." + "description": "Content that expresses prejudiced, judgmental, or opinionated views, includes offensive\nuse of language, stereotyping, use cases exploring a fictional world (for example, gaming,\nliterature) and depictions at low intensity." }, { "name": "medium", "value": "medium", - "description": "Content that uses offensive, insulting, mocking, intimidating, or demeaning language \ntowards specific identity groups, includes depictions of seeking and executing harmful \ninstructions, fantasies, glorification, promotion of harm at medium intensity." + "description": "Content that uses offensive, insulting, mocking, intimidating, or demeaning language\ntowards specific identity groups, includes depictions of seeking and executing harmful\ninstructions, fantasies, glorification, promotion of harm at medium intensity." }, { "name": "high", "value": "high", - "description": "Content that displays explicit and severe harmful instructions, actions, \ndamage, or abuse; includes endorsement, glorification, or promotion of severe \nharmful acts, extreme or illegal forms of harm, radicalization, or non-consensual \npower exchange or abuse." + "description": "Content that displays explicit and severe harmful instructions, actions,\ndamage, or abuse; includes endorsement, glorification, or promotion of severe\nharmful acts, extreme or illegal forms of harm, radicalization, or non-consensual\npower exchange or abuse." } ] } diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/generated.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/generated.json index 683f2fd965dd0..79ee9f7440d6b 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/generated.json +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2023-07-01-preview/generated.json @@ -1012,6 +1012,10 @@ "format": "int32", "description": "A value that controls the emission of log probabilities for the provided number of most likely\ntokens within a completions response." }, + "suffix": { + "type": "string", + "description": "The suffix that comes after a completion of inserted text" + }, "echo": { "type": "boolean", "description": "A value specifying whether completions responses should include input prompts as prefixes to\ntheir generated output." @@ -1107,15 +1111,15 @@ "properties": { "sexual": { "$ref": "#/definitions/ContentFilterResult", - "description": "Describes language related to anatomical organs and genitals, romantic relationships,\n acts portrayed in erotic or affectionate terms, physical sexual acts, including \n those portrayed as an assault or a forced sexual violent act against one’s will, \n prostitution, pornography, and abuse." + "description": "Describes language related to anatomical organs and genitals, romantic relationships,\n acts portrayed in erotic or affectionate terms, physical sexual acts, including\n those portrayed as an assault or a forced sexual violent act against one’s will,\n prostitution, pornography, and abuse." }, "violence": { "$ref": "#/definitions/ContentFilterResult", - "description": "Describes language related to physical actions intended to hurt, injure, damage, or \nkill someone or something; describes weapons, etc." + "description": "Describes language related to physical actions intended to hurt, injure, damage, or\nkill someone or something; describes weapons, etc." }, "hate": { "$ref": "#/definitions/ContentFilterResult", - "description": "Describes language attacks or uses that include pejorative or discriminatory language \nwith reference to a person or identity group on the basis of certain differentiating \nattributes of these groups including but not limited to race, ethnicity, nationality,\ngender identity and expression, sexual orientation, religion, immigration status, ability\nstatus, personal appearance, and body size." + "description": "Describes language attacks or uses that include pejorative or discriminatory language\nwith reference to a person or identity group on the basis of certain differentiating\nattributes of these groups including but not limited to race, ethnicity, nationality,\ngender identity and expression, sexual orientation, religion, immigration status, ability\nstatus, personal appearance, and body size." }, "self_harm": { "$ref": "#/definitions/ContentFilterResult", @@ -1134,15 +1138,15 @@ "properties": { "sexual": { "$ref": "#/definitions/ContentFilterResult", - "description": "Describes language related to anatomical organs and genitals, romantic relationships,\n acts portrayed in erotic or affectionate terms, physical sexual acts, including \n those portrayed as an assault or a forced sexual violent act against one’s will, \n prostitution, pornography, and abuse." + "description": "Describes language related to anatomical organs and genitals, romantic relationships,\n acts portrayed in erotic or affectionate terms, physical sexual acts, including\n those portrayed as an assault or a forced sexual violent act against one’s will,\n prostitution, pornography, and abuse." }, "violence": { "$ref": "#/definitions/ContentFilterResult", - "description": "Describes language related to physical actions intended to hurt, injure, damage, or \nkill someone or something; describes weapons, etc." + "description": "Describes language related to physical actions intended to hurt, injure, damage, or\nkill someone or something; describes weapons, etc." }, "hate": { "$ref": "#/definitions/ContentFilterResult", - "description": "Describes language attacks or uses that include pejorative or discriminatory language \nwith reference to a person or identity group on the basis of certain differentiating \nattributes of these groups including but not limited to race, ethnicity, nationality,\ngender identity and expression, sexual orientation, religion, immigration status, ability\nstatus, personal appearance, and body size." + "description": "Describes language attacks or uses that include pejorative or discriminatory language\nwith reference to a person or identity group on the basis of certain differentiating\nattributes of these groups including but not limited to race, ethnicity, nationality,\ngender identity and expression, sexual orientation, religion, immigration status, ability\nstatus, personal appearance, and body size." }, "self_harm": { "$ref": "#/definitions/ContentFilterResult", @@ -1192,22 +1196,22 @@ { "name": "safe", "value": "safe", - "description": "Content may be related to violence, self-harm, sexual, or hate categories but the terms \nare used in general, journalistic, scientific, medical, and similar professional contexts, \nwhich are appropriate for most audiences." + "description": "Content may be related to violence, self-harm, sexual, or hate categories but the terms\nare used in general, journalistic, scientific, medical, and similar professional contexts,\nwhich are appropriate for most audiences." }, { "name": "low", "value": "low", - "description": "Content that expresses prejudiced, judgmental, or opinionated views, includes offensive \nuse of language, stereotyping, use cases exploring a fictional world (for example, gaming,\nliterature) and depictions at low intensity." + "description": "Content that expresses prejudiced, judgmental, or opinionated views, includes offensive\nuse of language, stereotyping, use cases exploring a fictional world (for example, gaming,\nliterature) and depictions at low intensity." }, { "name": "medium", "value": "medium", - "description": "Content that uses offensive, insulting, mocking, intimidating, or demeaning language \ntowards specific identity groups, includes depictions of seeking and executing harmful \ninstructions, fantasies, glorification, promotion of harm at medium intensity." + "description": "Content that uses offensive, insulting, mocking, intimidating, or demeaning language\ntowards specific identity groups, includes depictions of seeking and executing harmful\ninstructions, fantasies, glorification, promotion of harm at medium intensity." }, { "name": "high", "value": "high", - "description": "Content that displays explicit and severe harmful instructions, actions, \ndamage, or abuse; includes endorsement, glorification, or promotion of severe \nharmful acts, extreme or illegal forms of harm, radicalization, or non-consensual \npower exchange or abuse." + "description": "Content that displays explicit and severe harmful instructions, actions,\ndamage, or abuse; includes endorsement, glorification, or promotion of severe\nharmful acts, extreme or illegal forms of harm, radicalization, or non-consensual\npower exchange or abuse." } ] } diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_audio_speech.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_audio_speech.json new file mode 100644 index 0000000000000..a0a7a03cbe739 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_audio_transcription_object.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_audio_transcription_object.json new file mode 100644 index 0000000000000..a01cac91c44fa --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_audio_transcription_text.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_audio_transcription_text.json new file mode 100644 index 0000000000000..2f6879b76e912 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_audio_translation_object.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_audio_translation_object.json new file mode 100644 index 0000000000000..547f78c69ab97 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_audio_translation_text.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_audio_translation_text.json new file mode 100644 index 0000000000000..e430342593698 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_chat_completions.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_chat_completions.json new file mode 100644 index 0000000000000..51bcbbe919942 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_completions.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_completions.json new file mode 100644 index 0000000000000..43c88dd756a25 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_embeddings.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_embeddings.json new file mode 100644 index 0000000000000..11cf8708a3624 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_extensions_chat_completions_aml_index.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_extensions_chat_completions_aml_index.json new file mode 100644 index 0000000000000..ad6c219875480 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_extensions_chat_completions_azure_search_advanced.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_extensions_chat_completions_azure_search_advanced.json new file mode 100644 index 0000000000000..dfb29d131b46d --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_extensions_chat_completions_azure_search_image_vector.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_extensions_chat_completions_azure_search_image_vector.json new file mode 100644 index 0000000000000..f8a2ef270e4fb --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_extensions_chat_completions_azure_search_minimum.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_extensions_chat_completions_azure_search_minimum.json new file mode 100644 index 0000000000000..0b22882c2f0cb --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_extensions_chat_completions_cosmos_db.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_extensions_chat_completions_cosmos_db.json new file mode 100644 index 0000000000000..12a14f73a834a --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_extensions_chat_completions_elasticsearch.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_extensions_chat_completions_elasticsearch.json new file mode 100644 index 0000000000000..e9b9e8a0bfbde --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_extensions_chat_completions_pinecone.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_extensions_chat_completions_pinecone.json new file mode 100644 index 0000000000000..f49bcf26a4543 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-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-02-15-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-02-15-preview/examples/generated_image_generation.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_image_generation.json new file mode 100644 index 0000000000000..50cdc4fc671c0 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/examples/generated_image_generation.json @@ -0,0 +1,31 @@ +{ + "operationId": "GetImageGenerations", + "title": "Creates images given a prompt.", + "parameters": { + "endpoint": "{endpoint}", + "api-version": "2024-02-15-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-02-15-preview/generated.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/generated.json new file mode 100644 index 0000000000000..26bb7a06e7e54 --- /dev/null +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/preview/2024-02-15-preview/generated.json @@ -0,0 +1,4213 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure OpenAI API", + "version": "2024-02-15-preview", + "description": "Azure OpenAI APIs for completions and search", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}/openai", + "useSchemePrefix": false, + "parameters": [ + { + "name": "endpoint", + "in": "path", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example:\nhttps://westus.api.cognitive.microsoft.com).", + "required": true, + "type": "string" + } + ] + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "ApiKeyAuth": [] + }, + { + "OAuth2Auth": [ + "https://cognitiveservices.azure.com/.default" + ] + } + ], + "securityDefinitions": { + "ApiKeyAuth": { + "type": "apiKey", + "name": "api-key", + "in": "header" + }, + "OAuth2Auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize", + "scopes": { + "https://cognitiveservices.azure.com/.default": "" + } + } + }, + "tags": [], + "paths": { + "/deployments/{deploymentId}/audio/speech": { + "post": { + "operationId": "GenerateSpeechFromText", + "description": "Generates text-to-speech audio from the input text.", + "produces": [ + "application/octet-stream", + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "deploymentId", + "in": "path", + "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SpeechGenerationOptions" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "type": "file" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse" + }, + "headers": { + "x-ms-error-code": { + "type": "string", + "description": "String error code indicating what went wrong." + } + } + } + }, + "x-ms-examples": { + "Generates text-to-speech audio from the input text.": { + "$ref": "./examples/generated_audio_speech.json" + } + } + } + }, + "/deployments/{deploymentId}/audio/transcriptions": { + "post": { + "operationId": "GetAudioTranscriptionAsPlainText", + "description": "Gets transcribed text and associated metadata from provided spoken audio data. Audio will be transcribed in the\nwritten language corresponding to the language it was spoken in.", + "produces": [ + "text/plain", + "application/json" + ], + "consumes": [ + "multipart/form-data" + ], + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "deploymentId", + "in": "path", + "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/AudioTranscriptionOptions.file" + }, + { + "$ref": "#/parameters/AudioTranscriptionOptions.filename" + }, + { + "$ref": "#/parameters/AudioTranscriptionOptions.responseFormat" + }, + { + "$ref": "#/parameters/AudioTranscriptionOptions.language" + }, + { + "$ref": "#/parameters/AudioTranscriptionOptions.prompt" + }, + { + "$ref": "#/parameters/AudioTranscriptionOptions.temperature" + }, + { + "$ref": "#/parameters/AudioTranscriptionOptions.model" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "type": "string" + } + }, + "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": { + "Gets transcribed text and associated metadata from provided spoken audio data.": { + "$ref": "./examples/generated_audio_transcription_text.json" + } + } + } + }, + "/deployments/{deploymentId}/audio/translations": { + "post": { + "operationId": "GetAudioTranslationAsPlainText", + "description": "Gets English language transcribed text and associated metadata from provided spoken audio data.", + "produces": [ + "text/plain", + "application/json" + ], + "consumes": [ + "multipart/form-data" + ], + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "deploymentId", + "in": "path", + "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/AudioTranslationOptions.file" + }, + { + "$ref": "#/parameters/AudioTranslationOptions.filename" + }, + { + "$ref": "#/parameters/AudioTranslationOptions.responseFormat" + }, + { + "$ref": "#/parameters/AudioTranslationOptions.prompt" + }, + { + "$ref": "#/parameters/AudioTranslationOptions.temperature" + }, + { + "$ref": "#/parameters/AudioTranslationOptions.model" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "type": "string" + } + }, + "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": { + "Gets English language transcribed text and associated metadata from provided spoken audio data.": { + "$ref": "./examples/generated_audio_translation_text.json" + } + } + } + }, + "/deployments/{deploymentId}/chat/completions": { + "post": { + "operationId": "GetChatCompletions", + "description": "Gets chat completions for the provided chat messages.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "deploymentId", + "in": "path", + "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ChatCompletionsOptions" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ChatCompletions" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse" + }, + "headers": { + "x-ms-error-code": { + "type": "string", + "description": "String error code indicating what went wrong." + } + } + } + }, + "x-ms-examples": { + "Creates a completion based on Azure Cognitive Services data and system-assigned managed identity. Uses Azure OpenAI chat extensions.": { + "$ref": "./examples/generated_extensions_chat_completions_azure_search_minimum.json" + }, + "Creates a completion based on Azure Cognitive Services image vector data. Uses Azure OpenAI chat extensions.": { + "$ref": "./examples/generated_extensions_chat_completions_azure_search_image_vector.json" + }, + "Creates a completion based on Azure Cognitive Services vector data and user-assigned managed identity. Uses Azure OpenAI chat extensions.": { + "$ref": "./examples/generated_extensions_chat_completions_azure_search_advanced.json" + }, + "Creates a completion for the provided AML index. Uses Azure OpenAI chat extensions.": { + "$ref": "./examples/generated_extensions_chat_completions_aml_index.json" + }, + "Creates a completion for the provided Azure Cosmos DB. Uses Azure OpenAI chat extensions.": { + "$ref": "./examples/generated_extensions_chat_completions_cosmos_db.json" + }, + "Creates a completion for the provided Elasticsearch. Uses Azure OpenAI chat extensions.": { + "$ref": "./examples/generated_extensions_chat_completions_elasticsearch.json" + }, + "Creates a completion for the provided Pinecone resource. Uses Azure OpenAI chat extensions.": { + "$ref": "./examples/generated_extensions_chat_completions_pinecone.json" + }, + "Creates a completion for the provided prompt, parameters and chosen model.": { + "$ref": "./examples/generated_chat_completions.json" + } + } + } + }, + "/deployments/{deploymentId}/completions": { + "post": { + "operationId": "GetCompletions", + "description": "Gets completions for the provided input prompts.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "deploymentId", + "in": "path", + "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CompletionsOptions" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/Completions" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse" + }, + "headers": { + "x-ms-error-code": { + "type": "string", + "description": "String error code indicating what went wrong." + } + } + } + }, + "x-ms-examples": { + "Creates a completion for the provided prompt, parameters and chosen model.": { + "$ref": "./examples/generated_completions.json" + } + } + } + }, + "/deployments/{deploymentId}/embeddings": { + "post": { + "operationId": "GetEmbeddings", + "description": "Return the embeddings for a given prompt.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "deploymentId", + "in": "path", + "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EmbeddingsOptions" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/Embeddings" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/Azure.Core.Foundations.ErrorResponse" + }, + "headers": { + "x-ms-error-code": { + "type": "string", + "description": "String error code indicating what went wrong." + } + } + } + }, + "x-ms-examples": { + "Return the embeddings for a given prompt.": { + "$ref": "./examples/generated_embeddings.json" + } + } + } + }, + "/deployments/{deploymentId}/images/generations": { + "post": { + "operationId": "GetImageGenerations", + "description": "Creates an image given a prompt.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "deploymentId", + "in": "path", + "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ImageGenerationOptions" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ImageGenerations" + } + }, + "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": { + "Creates images given a prompt.": { + "$ref": "./examples/generated_image_generation.json" + } + } + } + } + }, + "x-ms-paths": { + "/deployments/{deploymentId}/audio/transcriptions?_overload=getAudioTranscriptionAsResponseObject": { + "post": { + "operationId": "GetAudioTranscriptionAsResponseObject", + "description": "Gets transcribed text and associated metadata from provided spoken audio data. Audio will be transcribed in the\nwritten language corresponding to the language it was spoken in.", + "consumes": [ + "multipart/form-data" + ], + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "deploymentId", + "in": "path", + "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/AudioTranscriptionOptions.file" + }, + { + "$ref": "#/parameters/AudioTranscriptionOptions.filename" + }, + { + "$ref": "#/parameters/AudioTranscriptionOptions.responseFormat" + }, + { + "$ref": "#/parameters/AudioTranscriptionOptions.language" + }, + { + "$ref": "#/parameters/AudioTranscriptionOptions.prompt" + }, + { + "$ref": "#/parameters/AudioTranscriptionOptions.temperature" + }, + { + "$ref": "#/parameters/AudioTranscriptionOptions.model" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AudioTranscription" + } + }, + "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": { + "Gets transcribed text and associated metadata from provided spoken audio data.": { + "$ref": "./examples/generated_audio_transcription_object.json" + } + } + } + }, + "/deployments/{deploymentId}/audio/translations?_overload=getAudioTranslationAsResponseObject": { + "post": { + "operationId": "GetAudioTranslationAsResponseObject", + "description": "Gets English language transcribed text and associated metadata from provided spoken audio data.", + "consumes": [ + "multipart/form-data" + ], + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "deploymentId", + "in": "path", + "description": "Specifies either the model deployment name (when using Azure OpenAI) or model name (when using non-Azure OpenAI) to use for this request.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/AudioTranslationOptions.file" + }, + { + "$ref": "#/parameters/AudioTranslationOptions.filename" + }, + { + "$ref": "#/parameters/AudioTranslationOptions.responseFormat" + }, + { + "$ref": "#/parameters/AudioTranslationOptions.prompt" + }, + { + "$ref": "#/parameters/AudioTranslationOptions.temperature" + }, + { + "$ref": "#/parameters/AudioTranslationOptions.model" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/AudioTranslation" + } + }, + "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": { + "Gets English language transcribed text and associated metadata from provided spoken audio data.": { + "$ref": "./examples/generated_audio_translation_object.json" + } + } + } + } + }, + "definitions": { + "AudioTaskLabel": { + "type": "string", + "description": "Defines the possible descriptors for available audio operation responses.", + "enum": [ + "transcribe", + "translate" + ], + "x-ms-enum": { + "name": "AudioTaskLabel", + "modelAsString": true, + "values": [ + { + "name": "transcribe", + "value": "transcribe", + "description": "Accompanying response data resulted from an audio transcription task." + }, + { + "name": "translate", + "value": "translate", + "description": "Accompanying response data resulted from an audio translation task." + } + ] + } + }, + "AudioTranscription": { + "type": "object", + "description": "Result information for an operation that transcribed spoken audio into written text.", + "properties": { + "text": { + "type": "string", + "description": "The transcribed text for the provided audio data." + }, + "task": { + "$ref": "#/definitions/AudioTaskLabel", + "description": "The label that describes which operation type generated the accompanying response data." + }, + "language": { + "type": "string", + "description": "The spoken language that was detected in the transcribed audio data.\nThis is expressed as a two-letter ISO-639-1 language code like 'en' or 'fr'." + }, + "duration": { + "type": "number", + "format": "float", + "description": "The total duration of the audio processed to produce accompanying transcription information." + }, + "segments": { + "type": "array", + "description": "A collection of information about the timing, probabilities, and other detail of each processed audio segment.", + "items": { + "$ref": "#/definitions/AudioTranscriptionSegment" + } + } + }, + "required": [ + "text" + ] + }, + "AudioTranscriptionFormat": { + "type": "string", + "description": "Defines available options for the underlying response format of output transcription information.", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranscriptionFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the transcription." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing transcription text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated transcription." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + } + }, + "AudioTranscriptionOptions": { + "type": "object", + "description": "The configuration information for an audio transcription request.", + "properties": { + "file": { + "type": "string", + "format": "byte", + "description": "The audio data to transcribe. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm." + }, + "filename": { + "type": "string", + "description": "The optional filename or descriptive identifier to associate with with the audio data." + }, + "response_format": { + "$ref": "#/definitions/AudioTranscriptionFormat", + "description": "The requested format of the transcription response data, which will influence the content and detail of the result.", + "x-ms-client-name": "responseFormat" + }, + "language": { + "type": "string", + "description": "The primary spoken language of the audio data to be transcribed, supplied as a two-letter ISO-639-1 language code\nsuch as 'en' or 'fr'.\nProviding this known input language is optional but may improve the accuracy and/or latency of transcription." + }, + "prompt": { + "type": "string", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data." + }, + "temperature": { + "type": "number", + "format": "float", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit." + }, + "model": { + "type": "string", + "description": "The model to use for this transcription request." + } + }, + "required": [ + "file" + ] + }, + "AudioTranscriptionSegment": { + "type": "object", + "description": "Extended information about a single segment of transcribed audio data.\nSegments generally represent roughly 5-10 seconds of speech. Segment boundaries typically occur between words but not\nnecessarily sentences.", + "properties": { + "id": { + "type": "integer", + "format": "int32", + "description": "The 0-based index of this segment within a transcription." + }, + "start": { + "type": "number", + "format": "float", + "description": "The time at which this segment started relative to the beginning of the transcribed audio." + }, + "end": { + "type": "number", + "format": "float", + "description": "The time at which this segment ended relative to the beginning of the transcribed audio." + }, + "text": { + "type": "string", + "description": "The transcribed text that was part of this audio segment." + }, + "temperature": { + "type": "number", + "format": "float", + "description": "The temperature score associated with this audio segment." + }, + "avg_logprob": { + "type": "number", + "format": "float", + "description": "The average log probability associated with this audio segment.", + "x-ms-client-name": "avgLogprob" + }, + "compression_ratio": { + "type": "number", + "format": "float", + "description": "The compression ratio of this audio segment.", + "x-ms-client-name": "compressionRatio" + }, + "no_speech_prob": { + "type": "number", + "format": "float", + "description": "The probability of no speech detection within this audio segment.", + "x-ms-client-name": "noSpeechProb" + }, + "tokens": { + "type": "array", + "description": "The token IDs matching the transcribed text in this audio segment.", + "items": { + "type": "integer", + "format": "int32" + } + }, + "seek": { + "type": "integer", + "format": "int32", + "description": "The seek position associated with the processing of this audio segment.\nSeek positions are expressed as hundredths of seconds.\nThe model may process several segments from a single seek position, so while the seek position will never represent\na later time than the segment's start, the segment's start may represent a significantly later time than the\nsegment's associated seek position." + } + }, + "required": [ + "id", + "start", + "end", + "text", + "temperature", + "avg_logprob", + "compression_ratio", + "no_speech_prob", + "tokens", + "seek" + ] + }, + "AudioTranslation": { + "type": "object", + "description": "Result information for an operation that translated spoken audio into written text.", + "properties": { + "text": { + "type": "string", + "description": "The translated text for the provided audio data." + }, + "task": { + "$ref": "#/definitions/AudioTaskLabel", + "description": "The label that describes which operation type generated the accompanying response data." + }, + "language": { + "type": "string", + "description": "The spoken language that was detected in the translated audio data.\nThis is expressed as a two-letter ISO-639-1 language code like 'en' or 'fr'." + }, + "duration": { + "type": "number", + "format": "float", + "description": "The total duration of the audio processed to produce accompanying translation information." + }, + "segments": { + "type": "array", + "description": "A collection of information about the timing, probabilities, and other detail of each processed audio segment.", + "items": { + "$ref": "#/definitions/AudioTranslationSegment" + } + } + }, + "required": [ + "text" + ] + }, + "AudioTranslationFormat": { + "type": "string", + "description": "Defines available options for the underlying response format of output translation information.", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranslationFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the translation." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing translation text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated translation." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + } + }, + "AudioTranslationOptions": { + "type": "object", + "description": "The configuration information for an audio translation request.", + "properties": { + "file": { + "type": "string", + "format": "byte", + "description": "The audio data to translate. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm." + }, + "filename": { + "type": "string", + "description": "The optional filename or descriptive identifier to associate with with the audio data." + }, + "response_format": { + "$ref": "#/definitions/AudioTranslationFormat", + "description": "The requested format of the translation response data, which will influence the content and detail of the result.", + "x-ms-client-name": "responseFormat" + }, + "prompt": { + "type": "string", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data." + }, + "temperature": { + "type": "number", + "format": "float", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit." + }, + "model": { + "type": "string", + "description": "The model to use for this translation request." + } + }, + "required": [ + "file" + ] + }, + "AudioTranslationSegment": { + "type": "object", + "description": "Extended information about a single segment of translated audio data.\nSegments generally represent roughly 5-10 seconds of speech. Segment boundaries typically occur between words but not\nnecessarily sentences.", + "properties": { + "id": { + "type": "integer", + "format": "int32", + "description": "The 0-based index of this segment within a translation." + }, + "start": { + "type": "number", + "format": "float", + "description": "The time at which this segment started relative to the beginning of the translated audio." + }, + "end": { + "type": "number", + "format": "float", + "description": "The time at which this segment ended relative to the beginning of the translated audio." + }, + "text": { + "type": "string", + "description": "The translated text that was part of this audio segment." + }, + "temperature": { + "type": "number", + "format": "float", + "description": "The temperature score associated with this audio segment." + }, + "avg_logprob": { + "type": "number", + "format": "float", + "description": "The average log probability associated with this audio segment.", + "x-ms-client-name": "avgLogprob" + }, + "compression_ratio": { + "type": "number", + "format": "float", + "description": "The compression ratio of this audio segment.", + "x-ms-client-name": "compressionRatio" + }, + "no_speech_prob": { + "type": "number", + "format": "float", + "description": "The probability of no speech detection within this audio segment.", + "x-ms-client-name": "noSpeechProb" + }, + "tokens": { + "type": "array", + "description": "The token IDs matching the translated text in this audio segment.", + "items": { + "type": "integer", + "format": "int32" + } + }, + "seek": { + "type": "integer", + "format": "int32", + "description": "The seek position associated with the processing of this audio segment.\nSeek positions are expressed as hundredths of seconds.\nThe model may process several segments from a single seek position, so while the seek position will never represent\na later time than the segment's start, the segment's start may represent a significantly later time than the\nsegment's associated seek position." + } + }, + "required": [ + "id", + "start", + "end", + "text", + "temperature", + "avg_logprob", + "compression_ratio", + "no_speech_prob", + "tokens", + "seek" + ] + }, + "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." + } + } + }, + "AzureChatEnhancementConfiguration": { + "type": "object", + "description": "A representation of the available Azure OpenAI enhancement configurations.", + "properties": { + "grounding": { + "$ref": "#/definitions/AzureChatGroundingEnhancementConfiguration", + "description": "A representation of the available options for the Azure OpenAI grounding enhancement." + }, + "ocr": { + "$ref": "#/definitions/AzureChatOCREnhancementConfiguration", + "description": "A representation of the available options for the Azure OpenAI optical character recognition (OCR) enhancement." + } + } + }, + "AzureChatEnhancements": { + "type": "object", + "description": "Represents the output results of Azure enhancements to chat completions, as configured via the matching input provided\nin the request.", + "properties": { + "grounding": { + "$ref": "#/definitions/AzureGroundingEnhancement", + "description": "The grounding enhancement that returns the bounding box of the objects detected in the image." + } + } + }, + "AzureChatExtensionConfiguration": { + "type": "object", + "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.", + "properties": { + "type": { + "$ref": "#/definitions/AzureChatExtensionType", + "description": " The label for the type of an Azure chat extension. This typically corresponds to a matching Azure resource.\n Azure chat extensions are only compatible with Azure OpenAI." + } + }, + "discriminator": "type", + "required": [ + "type" + ] + }, + "AzureChatExtensionDataSourceResponseCitation": { + "type": "object", + "description": "A single instance of additional context information available when Azure OpenAI chat extensions are involved\nin the generation of a corresponding chat completions response. This context information is only populated when\nusing an Azure OpenAI request configured to use a matching extension.", + "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." + } + }, + "required": [ + "content" + ] + }, + "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_ml_index", + "azure_cosmos_db", + "elasticsearch", + "pinecone" + ], + "x-ms-enum": { + "name": "AzureChatExtensionType", + "modelAsString": true, + "values": [ + { + "name": "azureSearch", + "value": "azure_search", + "description": "Represents the use of Azure AI Search as an Azure OpenAI chat extension." + }, + { + "name": "azureMachineLearningIndex", + "value": "azure_ml_index", + "description": "Represents the use of Azure Machine Learning index 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": "pinecone", + "value": "pinecone", + "description": "Represents the use of Pinecone index as an Azure OpenAI chat extension." + } + ] + } + }, + "AzureChatExtensionsMessageContext": { + "type": "object", + "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.", + "properties": { + "citations": { + "type": "array", + "description": " The contextual information associated with the Azure chat extensions used for a chat completions request.\n These messages describe the data source retrievals, plugin invocations, and other intermediate steps taken in the\n course of generating a chat completions response that was augmented by capabilities from Azure OpenAI chat\n extensions.", + "items": { + "$ref": "#/definitions/AzureChatExtensionDataSourceResponseCitation" + }, + "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." + } + } + }, + "AzureChatGroundingEnhancementConfiguration": { + "type": "object", + "description": "A representation of the available options for the Azure OpenAI grounding enhancement.", + "properties": { + "enabled": { + "type": "boolean", + "description": "Specifies whether the enhancement is enabled." + } + }, + "required": [ + "enabled" + ] + }, + "AzureChatOCREnhancementConfiguration": { + "type": "object", + "description": "A representation of the available options for the Azure OpenAI optical character recognition (OCR) enhancement.", + "properties": { + "enabled": { + "type": "boolean", + "description": "Specifies whether the enhancement is enabled." + } + }, + "required": [ + "enabled" + ] + }, + "AzureCosmosDBChatExtensionConfiguration": { + "type": "object", + "description": "A specific representation of configurable options for Azure Cosmos DB when using it as an Azure OpenAI chat\nextension.", + "properties": { + "parameters": { + "$ref": "#/definitions/AzureCosmosDBChatExtensionParameters", + "description": "The parameters to use when configuring Azure OpenAI CosmosDB chat extensions." + } + }, + "required": [ + "parameters" + ], + "allOf": [ + { + "$ref": "#/definitions/AzureChatExtensionConfiguration" + } + ], + "x-ms-discriminator-value": "azure_cosmos_db" + }, + "AzureCosmosDBChatExtensionParameters": { + "type": "object", + "description": "Parameters to use when configuring Azure OpenAI On Your Data chat extensions when using Azure Cosmos DB for\nMongoDB vCore. The supported authentication type is ConnectionString.", + "properties": { + "authentication": { + "$ref": "#/definitions/OnYourDataAuthenticationOptions", + "description": "The authentication method to use when accessing the defined data source.\nEach data source type supports a specific set of available authentication methods; please see the documentation of\nthe data source for supported mechanisms.\nIf not otherwise provided, On Your Data will attempt to use System Managed Identity (default credential)\nauthentication." + }, + "top_n_documents": { + "type": "integer", + "format": "int32", + "description": "The configured top number of documents to feature for the configured query.", + "x-ms-client-name": "topNDocuments" + }, + "in_scope": { + "type": "boolean", + "description": "Whether queries should be restricted to use of indexed data.", + "x-ms-client-name": "inScope" + }, + "strictness": { + "type": "integer", + "format": "int32", + "description": "The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.", + "minimum": 1, + "maximum": 5 + }, + "role_information": { + "type": "string", + "description": "Give the model instructions about how it should behave and any context it should reference when generating a response. You can describe the assistant's personality and tell it how to format responses. There's a 100 token limit for it, and it counts against the overall token limit.", + "x-ms-client-name": "roleInformation" + }, + "database_name": { + "type": "string", + "description": "The MongoDB vCore database name to use with Azure Cosmos DB.", + "x-ms-client-name": "databaseName" + }, + "container_name": { + "type": "string", + "description": "The name of the Azure Cosmos DB resource container.", + "x-ms-client-name": "containerName" + }, + "index_name": { + "type": "string", + "description": "The MongoDB vCore index name to use with Azure Cosmos DB.", + "x-ms-client-name": "indexName" + }, + "fields_mapping": { + "$ref": "#/definitions/AzureCosmosDBFieldMappingOptions", + "description": "Customized field mapping behavior to use when interacting with the search index.", + "x-ms-client-name": "fieldsMapping" + }, + "embedding_dependency": { + "$ref": "#/definitions/OnYourDataVectorizationSource", + "description": "The embedding dependency for vector search.", + "x-ms-client-name": "embeddingDependency" + } + }, + "required": [ + "database_name", + "container_name", + "index_name", + "fields_mapping", + "embedding_dependency" + ] + }, + "AzureCosmosDBFieldMappingOptions": { + "type": "object", + "description": "Optional settings to control how fields are processed when using a configured Azure Cosmos DB resource.", + "properties": { + "title_field": { + "type": "string", + "description": "The name of the index field to use as a title.", + "x-ms-client-name": "titleField" + }, + "url_field": { + "type": "string", + "description": "The name of the index field to use as a URL.", + "x-ms-client-name": "urlField" + }, + "filepath_field": { + "type": "string", + "description": "The name of the index field to use as a filepath.", + "x-ms-client-name": "filepathField" + }, + "content_fields": { + "type": "array", + "description": "The names of index fields that should be treated as content.", + "items": { + "type": "string" + }, + "x-ms-client-name": "contentFields" + }, + "content_fields_separator": { + "type": "string", + "description": "The separator pattern that content fields should use.", + "x-ms-client-name": "contentFieldsSeparator" + }, + "vector_fields": { + "type": "array", + "description": "The names of fields that represent vector data.", + "items": { + "type": "string" + }, + "x-ms-client-name": "vectorFields" + } + }, + "required": [ + "content_fields", + "vector_fields" + ] + }, + "AzureGroundingEnhancement": { + "type": "object", + "description": "The grounding enhancement that returns the bounding box of the objects detected in the image.", + "properties": { + "lines": { + "type": "array", + "description": "The lines of text detected by the grounding enhancement.", + "items": { + "$ref": "#/definitions/AzureGroundingEnhancementLine" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "lines" + ] + }, + "AzureGroundingEnhancementCoordinatePoint": { + "type": "object", + "description": "A representation of a single polygon point as used by the Azure grounding enhancement.", + "properties": { + "x": { + "type": "number", + "format": "float", + "description": "The x-coordinate (horizontal axis) of the point." + }, + "y": { + "type": "number", + "format": "float", + "description": "The y-coordinate (vertical axis) of the point." + } + }, + "required": [ + "x", + "y" + ] + }, + "AzureGroundingEnhancementLine": { + "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", + "description": "The text within the line." + }, + "spans": { + "type": "array", + "description": "An array of spans that represent detected objects and its bounding box information.", + "items": { + "$ref": "#/definitions/AzureGroundingEnhancementLineSpan" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "text", + "spans" + ] + }, + "AzureGroundingEnhancementLineSpan": { + "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", + "format": "int32", + "description": "The character offset within the text where the span begins. This offset is defined as the position of the first\ncharacter of the span, counting from the start of the text as Unicode codepoints." + }, + "length": { + "type": "integer", + "format": "int32", + "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": { + "$ref": "#/definitions/AzureGroundingEnhancementCoordinatePoint" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "text", + "offset", + "length", + "polygon" + ] + }, + "AzureMachineLearningIndexChatExtensionConfiguration": { + "type": "object", + "description": "A specific representation of configurable options for Azure Machine Learning vector index when using it as an Azure\nOpenAI chat extension.", + "properties": { + "parameters": { + "$ref": "#/definitions/AzureMachineLearningIndexChatExtensionParameters", + "description": "The parameters for the Azure Machine Learning vector index chat extension." + } + }, + "required": [ + "parameters" + ], + "allOf": [ + { + "$ref": "#/definitions/AzureChatExtensionConfiguration" + } + ], + "x-ms-discriminator-value": "azure_ml_index" + }, + "AzureMachineLearningIndexChatExtensionParameters": { + "type": "object", + "description": "Parameters for the Azure Machine Learning vector index chat extension. The supported authentication types are AccessToken, SystemAssignedManagedIdentity and UserAssignedManagedIdentity.", + "properties": { + "authentication": { + "$ref": "#/definitions/OnYourDataAuthenticationOptions", + "description": "The authentication method to use when accessing the defined data source.\nEach data source type supports a specific set of available authentication methods; please see the documentation of\nthe data source for supported mechanisms.\nIf not otherwise provided, On Your Data will attempt to use System Managed Identity (default credential)\nauthentication." + }, + "top_n_documents": { + "type": "integer", + "format": "int32", + "description": "The configured top number of documents to feature for the configured query.", + "x-ms-client-name": "topNDocuments" + }, + "in_scope": { + "type": "boolean", + "description": "Whether queries should be restricted to use of indexed data.", + "x-ms-client-name": "inScope" + }, + "strictness": { + "type": "integer", + "format": "int32", + "description": "The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.", + "minimum": 1, + "maximum": 5 + }, + "role_information": { + "type": "string", + "description": "Give the model instructions about how it should behave and any context it should reference when generating a response. You can describe the assistant's personality and tell it how to format responses. There's a 100 token limit for it, and it counts against the overall token limit.", + "x-ms-client-name": "roleInformation" + }, + "project_resource_id": { + "type": "string", + "description": "The resource ID of the Azure Machine Learning project.", + "x-ms-client-name": "projectResourceId" + }, + "name": { + "type": "string", + "description": "The Azure Machine Learning vector index name." + }, + "version": { + "type": "string", + "description": "The version of the Azure Machine Learning vector index." + }, + "filter": { + "type": "string", + "description": "Search filter. Only supported if the Azure Machine Learning vector index is of type AzureSearch." + } + }, + "required": [ + "project_resource_id", + "name", + "version" + ] + }, + "AzureSearchChatExtensionConfiguration": { + "type": "object", + "description": "A specific representation of configurable options for Azure Search when using it as an Azure OpenAI chat\nextension.", + "properties": { + "parameters": { + "$ref": "#/definitions/AzureSearchChatExtensionParameters", + "description": "The parameters to use when configuring Azure Search." + } + }, + "required": [ + "parameters" + ], + "allOf": [ + { + "$ref": "#/definitions/AzureChatExtensionConfiguration" + } + ], + "x-ms-discriminator-value": "azure_search" + }, + "AzureSearchChatExtensionParameters": { + "type": "object", + "description": "Parameters for Azure Cognitive Search when used as an Azure OpenAI chat extension. The supported authentication types are APIKey, SystemAssignedManagedIdentity and UserAssignedManagedIdentity.", + "properties": { + "authentication": { + "$ref": "#/definitions/OnYourDataAuthenticationOptions", + "description": "The authentication method to use when accessing the defined data source.\nEach data source type supports a specific set of available authentication methods; please see the documentation of\nthe data source for supported mechanisms.\nIf not otherwise provided, On Your Data will attempt to use System Managed Identity (default credential)\nauthentication." + }, + "top_n_documents": { + "type": "integer", + "format": "int32", + "description": "The configured top number of documents to feature for the configured query.", + "x-ms-client-name": "topNDocuments" + }, + "in_scope": { + "type": "boolean", + "description": "Whether queries should be restricted to use of indexed data.", + "x-ms-client-name": "inScope" + }, + "strictness": { + "type": "integer", + "format": "int32", + "description": "The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.", + "minimum": 1, + "maximum": 5 + }, + "role_information": { + "type": "string", + "description": "Give the model instructions about how it should behave and any context it should reference when generating a response. You can describe the assistant's personality and tell it how to format responses. There's a 100 token limit for it, and it counts against the overall token limit.", + "x-ms-client-name": "roleInformation" + }, + "endpoint": { + "type": "string", + "format": "uri", + "description": "The absolute endpoint path for the Azure Cognitive Search resource to use." + }, + "index_name": { + "type": "string", + "description": "The name of the index to use as available in the referenced Azure Cognitive Search resource.", + "x-ms-client-name": "indexName" + }, + "fields_mapping": { + "$ref": "#/definitions/AzureSearchIndexFieldMappingOptions", + "description": "Customized field mapping behavior to use when interacting with the search index.", + "x-ms-client-name": "fieldsMapping" + }, + "query_type": { + "$ref": "#/definitions/AzureSearchQueryType", + "description": "The query type to use with Azure Cognitive Search.", + "x-ms-client-name": "queryType" + }, + "semantic_configuration": { + "type": "string", + "description": "The additional semantic configuration for the query.", + "x-ms-client-name": "semanticConfiguration" + }, + "filter": { + "type": "string", + "description": "Search filter." + }, + "embedding_dependency": { + "$ref": "#/definitions/OnYourDataVectorizationSource", + "description": "The embedding dependency for vector search.", + "x-ms-client-name": "embeddingDependency" + } + }, + "required": [ + "endpoint", + "index_name" + ] + }, + "AzureSearchIndexFieldMappingOptions": { + "type": "object", + "description": "Optional settings to control how fields are processed when using a configured Azure Search resource.", + "properties": { + "title_field": { + "type": "string", + "description": "The name of the index field to use as a title.", + "x-ms-client-name": "titleField" + }, + "url_field": { + "type": "string", + "description": "The name of the index field to use as a URL.", + "x-ms-client-name": "urlField" + }, + "filepath_field": { + "type": "string", + "description": "The name of the index field to use as a filepath.", + "x-ms-client-name": "filepathField" + }, + "content_fields": { + "type": "array", + "description": "The names of index fields that should be treated as content.", + "items": { + "type": "string" + }, + "x-ms-client-name": "contentFields" + }, + "content_fields_separator": { + "type": "string", + "description": "The separator pattern that content fields should use.", + "x-ms-client-name": "contentFieldsSeparator" + }, + "vector_fields": { + "type": "array", + "description": "The names of fields that represent vector data.", + "items": { + "type": "string" + }, + "x-ms-client-name": "vectorFields" + }, + "image_vector_fields": { + "type": "array", + "description": "The names of fields that represent image vector data.", + "items": { + "type": "string" + }, + "x-ms-client-name": "imageVectorFields" + } + } + }, + "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." + } + ] + } + }, + "ChatChoice": { + "type": "object", + "description": "The representation of a single prompt completion as part of an overall chat completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.", + "properties": { + "message": { + "$ref": "#/definitions/ChatResponseMessage", + "description": "The chat message for a given chat completions prompt." + }, + "logprobs": { + "type": "object", + "description": "The log probability information for this choice, as enabled via the 'logprobs' request option.", + "x-nullable": true, + "allOf": [ + { + "$ref": "#/definitions/ChatChoiceLogProbabilityInfo" + } + ] + }, + "index": { + "type": "integer", + "format": "int32", + "description": "The ordered index associated with this chat completions choice." + }, + "finish_reason": { + "$ref": "#/definitions/CompletionsFinishReason", + "description": "The reason that this chat completions choice completed its generated.", + "x-nullable": true, + "x-ms-client-name": "finishReason" + }, + "finish_details": { + "$ref": "#/definitions/ChatFinishDetails", + "description": "The reason the model stopped generating tokens, together with any applicable details.\nThis structured representation replaces 'finish_reason' for some models.", + "x-ms-client-name": "finishDetails" + }, + "delta": { + "$ref": "#/definitions/ChatResponseMessage", + "description": "The delta message content for a streaming response." + }, + "content_filter_results": { + "$ref": "#/definitions/ContentFilterResultsForChoice", + "description": "Information about the content filtering category (hate, sexual, violence, self_harm), if it\nhas been detected, as well as the severity level (very_low, low, medium, high-scale that\ndetermines the intensity and risk level of harmful content) and if it has been filtered or not.", + "x-ms-client-name": "contentFilterResults" + }, + "enhancements": { + "$ref": "#/definitions/AzureChatEnhancements", + "description": "Represents the output results of Azure OpenAI enhancements to chat completions, as configured via the matching input\nprovided in the request. This supplementary information is only available when using Azure OpenAI and only when the\nrequest is configured to use enhancements." + } + }, + "required": [ + "logprobs", + "index", + "finish_reason" + ] + }, + "ChatChoiceLogProbabilityInfo": { + "type": "object", + "description": "Log probability information for a choice, as requested via 'logprobs' and 'top_logprobs'.", + "properties": { + "content": { + "type": "array", + "description": "The list of log probability information entries for the choice's message content tokens, as requested via the 'logprobs' option.", + "x-nullable": true, + "items": { + "$ref": "#/definitions/ChatTokenLogProbabilityResult" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "content" + ] + }, + "ChatCompletions": { + "type": "object", + "description": "Representation of the response data from a chat completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.", + "properties": { + "id": { + "type": "string", + "description": "A unique identifier associated with this chat completions response." + }, + "created": { + "type": "integer", + "format": "unixtime", + "description": "The first timestamp associated with generation activity for this completions response,\nrepresented as seconds since the beginning of the Unix epoch of 00:00 on 1 Jan 1970." + }, + "choices": { + "type": "array", + "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.", + "items": { + "$ref": "#/definitions/ChatChoice" + }, + "x-ms-identifiers": [] + }, + "prompt_filter_results": { + "type": "array", + "description": "Content filtering results for zero or more prompts in the request. In a streaming request,\nresults for different prompts may arrive at different times or in different orders.", + "items": { + "$ref": "#/definitions/ContentFilterResultsForPrompt" + }, + "x-ms-client-name": "promptFilterResults", + "x-ms-identifiers": [] + }, + "system_fingerprint": { + "type": "string", + "description": "Can be used in conjunction with the `seed` request parameter to understand when backend changes have been made that\nmight impact determinism.", + "x-ms-client-name": "systemFingerprint" + }, + "usage": { + "$ref": "#/definitions/CompletionsUsage", + "description": "Usage information for tokens processed and generated as part of this completions operation." + } + }, + "required": [ + "id", + "created", + "choices", + "usage" + ] + }, + "ChatCompletionsFunctionToolCall": { + "type": "object", + "description": "A tool call to a function tool, issued by the model in evaluation of a configured function tool, that represents\na function invocation needed for a subsequent chat completions request to resolve.", + "properties": { + "function": { + "$ref": "#/definitions/FunctionCall", + "description": "The details of the function invocation requested by the tool call." + } + }, + "required": [ + "function" + ], + "allOf": [ + { + "$ref": "#/definitions/ChatCompletionsToolCall" + } + ], + "x-ms-discriminator-value": "function" + }, + "ChatCompletionsFunctionToolDefinition": { + "type": "object", + "description": "The definition information for a chat completions function tool that can call a function in response to a tool call.", + "properties": { + "function": { + "$ref": "#/definitions/FunctionDefinition", + "description": "The function definition details for the function tool." + } + }, + "required": [ + "function" + ], + "allOf": [ + { + "$ref": "#/definitions/ChatCompletionsToolDefinition" + } + ], + "x-ms-discriminator-value": "function" + }, + "ChatCompletionsJsonResponseFormat": { + "type": "object", + "description": "A response format for Chat Completions that restricts responses to emitting valid JSON objects.", + "allOf": [ + { + "$ref": "#/definitions/ChatCompletionsResponseFormat" + } + ], + "x-ms-discriminator-value": "json_object" + }, + "ChatCompletionsOptions": { + "type": "object", + "description": "The configuration information for a chat completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.", + "properties": { + "messages": { + "type": "array", + "description": "The collection of context messages associated with this chat completions request.\nTypical usage begins with a chat message for the System role that provides instructions for\nthe behavior of the assistant, followed by alternating messages between the User and\nAssistant roles.", + "items": { + "$ref": "#/definitions/ChatRequestMessage" + }, + "x-ms-identifiers": [] + }, + "functions": { + "type": "array", + "description": "A list of functions the model may generate JSON inputs for.", + "items": { + "$ref": "#/definitions/FunctionDefinition" + }, + "x-ms-identifiers": [] + }, + "function_call": { + "description": "Controls how the model responds to function calls. \"none\" means the model does not call a function,\nand responds to the end-user. \"auto\" means the model can pick between an end-user or calling a function.\n Specifying a particular function via `{\"name\": \"my_function\"}` forces the model to call that function.\n \"none\" is the default when no functions are present. \"auto\" is the default if functions are present.", + "x-ms-client-name": "functionCall" + }, + "max_tokens": { + "type": "integer", + "format": "int32", + "description": "The maximum number of tokens to generate.", + "x-ms-client-name": "maxTokens" + }, + "temperature": { + "type": "number", + "format": "float", + "description": "The sampling temperature to use that controls the apparent creativity of generated completions.\nHigher values will make output more random while lower values will make results more focused\nand deterministic.\nIt is not recommended to modify temperature and top_p for the same completions request as the\ninteraction of these two settings is difficult to predict." + }, + "top_p": { + "type": "number", + "format": "float", + "description": "An alternative to sampling with temperature called nucleus sampling. This value causes the\nmodel to consider the results of tokens with the provided probability mass. As an example, a\nvalue of 0.15 will cause only the tokens comprising the top 15% of probability mass to be\nconsidered.\nIt is not recommended to modify temperature and top_p for the same completions request as the\ninteraction of these two settings is difficult to predict.", + "x-ms-client-name": "topP" + }, + "logit_bias": { + "type": "object", + "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.", + "additionalProperties": { + "format": "int32", + "type": "integer" + }, + "x-ms-client-name": "logitBias" + }, + "user": { + "type": "string", + "description": "An identifier for the caller or end user of the operation. This may be used for tracking\nor rate-limiting purposes." + }, + "n": { + "type": "integer", + "format": "int32", + "description": "The number of chat completions choices that should be generated for a chat completions\nresponse.\nBecause this setting can generate many completions, it may quickly consume your token quota.\nUse carefully and ensure reasonable settings for max_tokens and stop." + }, + "stop": { + "type": "array", + "description": "A collection of textual sequences that will end completions generation.", + "items": { + "type": "string" + } + }, + "presence_penalty": { + "type": "number", + "format": "float", + "description": "A value that influences the probability of generated tokens appearing based on their existing\npresence in generated text.\nPositive values will make tokens less likely to appear when they already exist and increase the\nmodel's likelihood to output new topics.", + "x-ms-client-name": "presencePenalty" + }, + "frequency_penalty": { + "type": "number", + "format": "float", + "description": "A value that influences the probability of generated tokens appearing based on their cumulative\nfrequency in generated text.\nPositive values will make tokens less likely to appear as their frequency increases and\ndecrease the likelihood of the model repeating the same statements verbatim.", + "x-ms-client-name": "frequencyPenalty" + }, + "stream": { + "type": "boolean", + "description": "A value indicating whether chat completions should be streamed for this request." + }, + "model": { + "type": "string", + "description": "The model name to provide as part of this completions request.\nNot applicable to Azure OpenAI, where deployment information should be included in the Azure\nresource URI that's connected to." + }, + "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": "#/definitions/AzureChatExtensionConfiguration" + }, + "x-ms-client-name": "dataSources", + "x-ms-identifiers": [] + }, + "enhancements": { + "$ref": "#/definitions/AzureChatEnhancementConfiguration", + "description": "If provided, the configuration options for available Azure OpenAI chat enhancements." + }, + "seed": { + "type": "integer", + "format": "int64", + "description": "If specified, the system will make a best effort to sample deterministically such that repeated requests with the\nsame seed and parameters should return the same result. Determinism is not guaranteed, and you should refer to the\nsystem_fingerprint response parameter to monitor changes in the backend.\"" + }, + "logprobs": { + "type": "boolean", + "description": "Whether to return log probabilities of the output tokens or not. If true, returns the log probabilities of each output token returned in the `content` of `message`. This option is currently not available on the `gpt-4-vision-preview` model.", + "default": false, + "x-nullable": true + }, + "top_logprobs": { + "type": "integer", + "format": "int32", + "description": "An integer between 0 and 5 specifying the number of most likely tokens to return at each token position, each with an associated log probability. `logprobs` must be set to `true` if this parameter is used.", + "x-nullable": true + }, + "response_format": { + "$ref": "#/definitions/ChatCompletionsResponseFormat", + "description": "An object specifying the format that the model must output. Used to enable JSON mode.", + "x-ms-client-name": "responseFormat" + }, + "tools": { + "type": "array", + "description": "The available tool definitions that the chat completions request can use, including caller-defined functions.", + "items": { + "$ref": "#/definitions/ChatCompletionsToolDefinition" + }, + "x-ms-identifiers": [] + }, + "tool_choice": { + "description": "If specified, the model will configure which of the provided tools it can use for the chat completions response.", + "x-ms-client-name": "toolChoice" + } + }, + "required": [ + "messages" + ] + }, + "ChatCompletionsResponseFormat": { + "type": "object", + "description": "An abstract representation of a response format configuration usable by Chat Completions. Can be used to enable JSON\nmode.", + "properties": { + "type": { + "type": "string", + "description": "The discriminated type for the response format." + } + }, + "discriminator": "type", + "required": [ + "type" + ] + }, + "ChatCompletionsTextResponseFormat": { + "type": "object", + "description": "The standard Chat Completions response format that can freely generate text and is not guaranteed to produce response\ncontent that adheres to a specific schema.", + "allOf": [ + { + "$ref": "#/definitions/ChatCompletionsResponseFormat" + } + ], + "x-ms-discriminator-value": "text" + }, + "ChatCompletionsToolCall": { + "type": "object", + "description": "An abstract representation of a tool call that must be resolved in a subsequent request to perform the requested\nchat completion.", + "properties": { + "type": { + "type": "string", + "description": "The object type." + }, + "id": { + "type": "string", + "description": "The ID of the tool call." + } + }, + "discriminator": "type", + "required": [ + "type", + "id" + ] + }, + "ChatCompletionsToolDefinition": { + "type": "object", + "description": "An abstract representation of a tool that can be used by the model to improve a chat completions response.", + "properties": { + "type": { + "type": "string", + "description": "The object type." + } + }, + "discriminator": "type", + "required": [ + "type" + ] + }, + "ChatFinishDetails": { + "type": "object", + "description": "An abstract representation of structured information about why a chat completions response terminated.", + "properties": { + "type": { + "type": "string", + "description": "The object type." + } + }, + "discriminator": "type", + "required": [ + "type" + ] + }, + "ChatRequestAssistantMessage": { + "type": "object", + "description": "A request chat message representing response or action from the assistant.", + "properties": { + "content": { + "type": "string", + "description": "The content of the message.", + "x-nullable": true + }, + "name": { + "type": "string", + "description": "An optional name for the participant." + }, + "tool_calls": { + "type": "array", + "description": "The tool calls that must be resolved and have their outputs appended to subsequent input messages for the chat\ncompletions request to resolve as configured.", + "items": { + "$ref": "#/definitions/ChatCompletionsToolCall" + }, + "x-ms-client-name": "toolCalls" + }, + "function_call": { + "$ref": "#/definitions/FunctionCall", + "description": "The function call that must be resolved and have its output appended to subsequent input messages for the chat\ncompletions request to resolve as configured.", + "x-ms-client-name": "functionCall" + } + }, + "required": [ + "content" + ], + "allOf": [ + { + "$ref": "#/definitions/ChatRequestMessage" + } + ], + "x-ms-discriminator-value": "assistant" + }, + "ChatRequestFunctionMessage": { + "type": "object", + "description": "A request chat message representing requested output from a configured function.", + "properties": { + "name": { + "type": "string", + "description": "The name of the function that was called to produce output." + }, + "content": { + "type": "string", + "description": "The output of the function as requested by the function call.", + "x-nullable": true + } + }, + "required": [ + "name", + "content" + ], + "allOf": [ + { + "$ref": "#/definitions/ChatRequestMessage" + } + ], + "x-ms-discriminator-value": "function" + }, + "ChatRequestMessage": { + "type": "object", + "description": "An abstract representation of a chat message as provided in a request.", + "properties": { + "role": { + "$ref": "#/definitions/ChatRole", + "description": "The chat role associated with this message." + } + }, + "discriminator": "role", + "required": [ + "role" + ] + }, + "ChatRequestSystemMessage": { + "type": "object", + "description": "A request chat message containing system instructions that influence how the model will generate a chat completions\nresponse.", + "properties": { + "content": { + "type": "string", + "description": "The contents of the system message." + }, + "name": { + "type": "string", + "description": "An optional name for the participant." + } + }, + "required": [ + "content" + ], + "allOf": [ + { + "$ref": "#/definitions/ChatRequestMessage" + } + ], + "x-ms-discriminator-value": "system" + }, + "ChatRequestToolMessage": { + "type": "object", + "description": "A request chat message representing requested output from a configured tool.", + "properties": { + "content": { + "type": "string", + "description": "The content of the message.", + "x-nullable": true + }, + "tool_call_id": { + "type": "string", + "description": "The ID of the tool call resolved by the provided content.", + "x-ms-client-name": "toolCallId" + } + }, + "required": [ + "content", + "tool_call_id" + ], + "allOf": [ + { + "$ref": "#/definitions/ChatRequestMessage" + } + ], + "x-ms-discriminator-value": "tool" + }, + "ChatRequestUserMessage": { + "type": "object", + "description": "A request chat message representing user input to the assistant.", + "properties": { + "content": { + "description": "The contents of the user message, with available input types varying by selected model." + }, + "name": { + "type": "string", + "description": "An optional name for the participant." + } + }, + "required": [ + "content" + ], + "allOf": [ + { + "$ref": "#/definitions/ChatRequestMessage" + } + ], + "x-ms-discriminator-value": "user" + }, + "ChatResponseMessage": { + "type": "object", + "description": "A representation of a chat message as received in a response.", + "properties": { + "role": { + "$ref": "#/definitions/ChatRole", + "description": "The chat role associated with the message." + }, + "content": { + "type": "string", + "description": "The content of the message.", + "x-nullable": true + }, + "tool_calls": { + "type": "array", + "description": "The tool calls that must be resolved and have their outputs appended to subsequent input messages for the chat\ncompletions request to resolve as configured.", + "items": { + "$ref": "#/definitions/ChatCompletionsToolCall" + }, + "x-ms-client-name": "toolCalls" + }, + "function_call": { + "$ref": "#/definitions/FunctionCall", + "description": "The function call that must be resolved and have its output appended to subsequent input messages for the chat\ncompletions request to resolve as configured.", + "x-ms-client-name": "functionCall" + }, + "context": { + "$ref": "#/definitions/AzureChatExtensionsMessageContext", + "description": "If Azure OpenAI chat extensions are configured, this array represents the incremental steps performed by those\nextensions while processing the chat completions request." + } + }, + "required": [ + "role", + "content" + ] + }, + "ChatRole": { + "type": "string", + "description": "A description of the intended purpose of a message within a chat completions interaction.", + "enum": [ + "system", + "assistant", + "user", + "function", + "tool" + ], + "x-ms-enum": { + "name": "ChatRole", + "modelAsString": true, + "values": [ + { + "name": "system", + "value": "system", + "description": "The role that instructs or sets the behavior of the assistant." + }, + { + "name": "assistant", + "value": "assistant", + "description": "The role that provides responses to system-instructed, user-prompted input." + }, + { + "name": "user", + "value": "user", + "description": "The role that provides input for chat completions." + }, + { + "name": "function", + "value": "function", + "description": "The role that provides function results for chat completions." + }, + { + "name": "tool", + "value": "tool", + "description": "The role that represents extension tool activity within a chat completions operation." + } + ] + } + }, + "ChatTokenLogProbabilityInfo": { + "type": "object", + "description": "A representation of the log probability information for a single message content token.", + "properties": { + "token": { + "type": "string", + "description": "The message content token." + }, + "logprob": { + "type": "number", + "format": "float", + "description": "The log probability of the message content token." + }, + "bytes": { + "type": "array", + "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.", + "x-nullable": true, + "items": { + "type": "integer", + "format": "int32" + } + } + }, + "required": [ + "token", + "logprob", + "bytes" + ] + }, + "ChatTokenLogProbabilityResult": { + "type": "object", + "description": "A representation of the log probability information for a single content token, including a list of most likely tokens if 'top_logprobs' were requested.", + "properties": { + "token": { + "type": "string", + "description": "The message content token." + }, + "logprob": { + "type": "number", + "format": "float", + "description": "The log probability of the message content token." + }, + "bytes": { + "type": "array", + "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.", + "x-nullable": true, + "items": { + "type": "integer", + "format": "int32" + } + }, + "top_logprobs": { + "type": "array", + "description": "The list of most likely tokens and their log probability information, as requested via 'top_logprobs'.", + "x-nullable": true, + "items": { + "$ref": "#/definitions/ChatTokenLogProbabilityInfo" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "token", + "logprob", + "bytes", + "top_logprobs" + ] + }, + "Choice": { + "type": "object", + "description": "The representation of a single prompt completion as part of an overall completions request.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.", + "properties": { + "text": { + "type": "string", + "description": "The generated text for a given completions prompt." + }, + "index": { + "type": "integer", + "format": "int32", + "description": "The ordered index associated with this completions choice." + }, + "content_filter_results": { + "$ref": "#/definitions/ContentFilterResultsForChoice", + "description": "Information about the content filtering category (hate, sexual, violence, self_harm), if it\nhas been detected, as well as the severity level (very_low, low, medium, high-scale that\ndetermines the intensity and risk level of harmful content) and if it has been filtered or not.", + "x-ms-client-name": "contentFilterResults" + }, + "logprobs": { + "type": "object", + "description": "The log probabilities model for tokens associated with this completions choice.", + "x-nullable": true, + "allOf": [ + { + "$ref": "#/definitions/CompletionsLogProbabilityModel" + } + ] + }, + "finish_reason": { + "$ref": "#/definitions/CompletionsFinishReason", + "description": "Reason for finishing", + "x-nullable": true, + "x-ms-client-name": "finishReason" + } + }, + "required": [ + "text", + "index", + "logprobs", + "finish_reason" + ] + }, + "Completions": { + "type": "object", + "description": "Representation of the response data from a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.", + "properties": { + "id": { + "type": "string", + "description": "A unique identifier associated with this completions response." + }, + "created": { + "type": "integer", + "format": "unixtime", + "description": "The first timestamp associated with generation activity for this completions response,\nrepresented as seconds since the beginning of the Unix epoch of 00:00 on 1 Jan 1970." + }, + "prompt_filter_results": { + "type": "array", + "description": "Content filtering results for zero or more prompts in the request. In a streaming request,\nresults for different prompts may arrive at different times or in different orders.", + "items": { + "$ref": "#/definitions/ContentFilterResultsForPrompt" + }, + "x-ms-client-name": "promptFilterResults", + "x-ms-identifiers": [] + }, + "choices": { + "type": "array", + "description": "The collection of completions choices associated with this completions response.\nGenerally, `n` choices are generated per provided prompt with a default value of 1.\nToken limits and other settings may limit the number of choices generated.", + "items": { + "$ref": "#/definitions/Choice" + }, + "x-ms-identifiers": [] + }, + "usage": { + "$ref": "#/definitions/CompletionsUsage", + "description": "Usage information for tokens processed and generated as part of this completions operation." + } + }, + "required": [ + "id", + "created", + "choices", + "usage" + ] + }, + "CompletionsFinishReason": { + "type": "string", + "description": "Representation of the manner in which a completions response concluded.", + "enum": [ + "stop", + "length", + "content_filter", + "function_call", + "tool_calls" + ], + "x-ms-enum": { + "name": "CompletionsFinishReason", + "modelAsString": true, + "values": [ + { + "name": "stopped", + "value": "stop", + "description": "Completions ended normally and reached its end of token generation." + }, + { + "name": "tokenLimitReached", + "value": "length", + "description": "Completions exhausted available token limits before generation could complete." + }, + { + "name": "contentFiltered", + "value": "content_filter", + "description": "Completions generated a response that was identified as potentially sensitive per content\nmoderation policies." + }, + { + "name": "functionCall", + "value": "function_call", + "description": "Completion ended normally, with the model requesting a function to be called." + }, + { + "name": "toolCalls", + "value": "tool_calls", + "description": "Completion ended with the model calling a provided tool for output." + } + ] + } + }, + "CompletionsLogProbabilityModel": { + "type": "object", + "description": "Representation of a log probabilities model for a completions generation.", + "properties": { + "tokens": { + "type": "array", + "description": "The textual forms of tokens evaluated in this probability model.", + "items": { + "type": "string" + } + }, + "token_logprobs": { + "type": "array", + "description": "A collection of log probability values for the tokens in this completions data.", + "items": { + "type": "number", + "format": "float", + "x-nullable": true + }, + "x-ms-client-name": "tokenLogprobs" + }, + "top_logprobs": { + "type": "array", + "description": "A mapping of tokens to maximum log probability values in this completions data.", + "items": { + "type": "object", + "additionalProperties": { + "format": "float", + "type": "number", + "x-nullable": true + } + }, + "x-ms-client-name": "topLogprobs", + "x-ms-identifiers": [] + }, + "text_offset": { + "type": "array", + "description": "The text offsets associated with tokens in this completions data.", + "items": { + "type": "integer", + "format": "int32" + }, + "x-ms-client-name": "textOffset" + } + }, + "required": [ + "tokens", + "token_logprobs", + "top_logprobs", + "text_offset" + ] + }, + "CompletionsOptions": { + "type": "object", + "description": "The configuration information for a completions request.\nCompletions support a wide variety of tasks and generate text that continues from or \"completes\"\nprovided prompt data.", + "properties": { + "prompt": { + "type": "array", + "description": "The prompts to generate completions from.", + "items": { + "type": "string" + } + }, + "max_tokens": { + "type": "integer", + "format": "int32", + "description": "The maximum number of tokens to generate.", + "x-ms-client-name": "maxTokens" + }, + "temperature": { + "type": "number", + "format": "float", + "description": "The sampling temperature to use that controls the apparent creativity of generated completions.\nHigher values will make output more random while lower values will make results more focused\nand deterministic.\nIt is not recommended to modify temperature and top_p for the same completions request as the\ninteraction of these two settings is difficult to predict." + }, + "top_p": { + "type": "number", + "format": "float", + "description": "An alternative to sampling with temperature called nucleus sampling. This value causes the\nmodel to consider the results of tokens with the provided probability mass. As an example, a\nvalue of 0.15 will cause only the tokens comprising the top 15% of probability mass to be\nconsidered.\nIt is not recommended to modify temperature and top_p for the same completions request as the\ninteraction of these two settings is difficult to predict.", + "x-ms-client-name": "topP" + }, + "logit_bias": { + "type": "object", + "description": "A map between GPT token IDs and bias scores that influences the probability of specific tokens\nappearing in a completions response. Token IDs are computed via external tokenizer tools, while\nbias scores reside in the range of -100 to 100 with minimum and maximum values corresponding to\na full ban or exclusive selection of a token, respectively. The exact behavior of a given bias\nscore varies by model.", + "additionalProperties": { + "format": "int32", + "type": "integer" + }, + "x-ms-client-name": "logitBias" + }, + "user": { + "type": "string", + "description": "An identifier for the caller or end user of the operation. This may be used for tracking\nor rate-limiting purposes." + }, + "n": { + "type": "integer", + "format": "int32", + "description": "The number of completions choices that should be generated per provided prompt as part of an\noverall completions response.\nBecause this setting can generate many completions, it may quickly consume your token quota.\nUse carefully and ensure reasonable settings for max_tokens and stop." + }, + "logprobs": { + "type": "integer", + "format": "int32", + "description": "A value that controls the emission of log probabilities for the provided number of most likely\ntokens within a completions response." + }, + "suffix": { + "type": "string", + "description": "The suffix that comes after a completion of inserted text" + }, + "echo": { + "type": "boolean", + "description": "A value specifying whether completions responses should include input prompts as prefixes to\ntheir generated output." + }, + "stop": { + "type": "array", + "description": "A collection of textual sequences that will end completions generation.", + "items": { + "type": "string" + } + }, + "presence_penalty": { + "type": "number", + "format": "float", + "description": "A value that influences the probability of generated tokens appearing based on their existing\npresence in generated text.\nPositive values will make tokens less likely to appear when they already exist and increase the\nmodel's likelihood to output new topics.", + "x-ms-client-name": "presencePenalty" + }, + "frequency_penalty": { + "type": "number", + "format": "float", + "description": "A value that influences the probability of generated tokens appearing based on their cumulative\nfrequency in generated text.\nPositive values will make tokens less likely to appear as their frequency increases and\ndecrease the likelihood of the model repeating the same statements verbatim.", + "x-ms-client-name": "frequencyPenalty" + }, + "best_of": { + "type": "integer", + "format": "int32", + "description": "A value that controls how many completions will be internally generated prior to response\nformulation.\nWhen used together with n, best_of controls the number of candidate completions and must be\ngreater than n.\nBecause this setting can generate many completions, it may quickly consume your token quota.\nUse carefully and ensure reasonable settings for max_tokens and stop.", + "x-ms-client-name": "bestOf" + }, + "stream": { + "type": "boolean", + "description": "A value indicating whether chat completions should be streamed for this request." + }, + "model": { + "type": "string", + "description": "The model name to provide as part of this completions request.\nNot applicable to Azure OpenAI, where deployment information should be included in the Azure\nresource URI that's connected to." + } + }, + "required": [ + "prompt" + ] + }, + "CompletionsUsage": { + "type": "object", + "description": "Representation of the token counts processed for a completions request.\nCounts consider all tokens across prompts, choices, choice alternates, best_of generations, and\nother consumers.", + "properties": { + "completion_tokens": { + "type": "integer", + "format": "int32", + "description": "The number of tokens generated across all completions emissions.", + "x-ms-client-name": "completionTokens" + }, + "prompt_tokens": { + "type": "integer", + "format": "int32", + "description": "The number of tokens in the provided prompts for the completions request.", + "x-ms-client-name": "promptTokens" + }, + "total_tokens": { + "type": "integer", + "format": "int32", + "description": "The total number of tokens processed for the completions request and response.", + "x-ms-client-name": "totalTokens" + } + }, + "required": [ + "completion_tokens", + "prompt_tokens", + "total_tokens" + ] + }, + "ContentFilterBlocklistIdResult": { + "type": "object", + "description": "Represents the outcome of an evaluation against a custom blocklist as performed by content filtering.", + "properties": { + "id": { + "type": "string", + "description": "The ID of the custom blocklist evaluated." + }, + "filtered": { + "type": "boolean", + "description": "A value indicating whether or not the content has been filtered." + } + }, + "required": [ + "id", + "filtered" + ] + }, + "ContentFilterCitedDetectionResult": { + "type": "object", + "description": "Represents the outcome of a detection operation against protected resources as performed by content filtering.", + "properties": { + "filtered": { + "type": "boolean", + "description": "A value indicating whether or not the content has been filtered." + }, + "detected": { + "type": "boolean", + "description": "A value indicating whether detection occurred, irrespective of severity or whether the content was filtered." + }, + "URL": { + "type": "string", + "format": "uri", + "description": "The internet location associated with the detection.", + "x-ms-client-name": "url" + }, + "license": { + "type": "string", + "description": "The license description associated with the detection." + } + }, + "required": [ + "filtered", + "detected", + "license" + ] + }, + "ContentFilterDetectionResult": { + "type": "object", + "description": "Represents the outcome of a detection operation performed by content filtering.", + "properties": { + "filtered": { + "type": "boolean", + "description": "A value indicating whether or not the content has been filtered." + }, + "detected": { + "type": "boolean", + "description": "A value indicating whether detection occurred, irrespective of severity or whether the content was filtered." + } + }, + "required": [ + "filtered", + "detected" + ] + }, + "ContentFilterResult": { + "type": "object", + "description": "Information about filtered content severity level and if it has been filtered or not.", + "properties": { + "severity": { + "$ref": "#/definitions/ContentFilterSeverity", + "description": "Ratings for the intensity and risk level of filtered content." + }, + "filtered": { + "type": "boolean", + "description": "A value indicating whether or not the content has been filtered." + } + }, + "required": [ + "severity", + "filtered" + ] + }, + "ContentFilterResultDetailsForPrompt": { + "type": "object", + "description": "Information about content filtering evaluated against input data to Azure OpenAI.", + "properties": { + "sexual": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language related to anatomical organs and genitals, romantic relationships,\n acts portrayed in erotic or affectionate terms, physical sexual acts, including\n those portrayed as an assault or a forced sexual violent act against one’s will,\n prostitution, pornography, and abuse." + }, + "violence": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language related to physical actions intended to hurt, injure, damage, or\nkill someone or something; describes weapons, etc." + }, + "hate": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language attacks or uses that include pejorative or discriminatory language\nwith reference to a person or identity group on the basis of certain differentiating\nattributes of these groups including but not limited to race, ethnicity, nationality,\ngender identity and expression, sexual orientation, religion, immigration status, ability\nstatus, personal appearance, and body size." + }, + "self_harm": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language related to physical actions intended to purposely hurt, injure,\nor damage one’s body, or kill oneself.", + "x-ms-client-name": "selfHarm" + }, + "profanity": { + "$ref": "#/definitions/ContentFilterDetectionResult", + "description": "Describes whether profanity was detected." + }, + "custom_blocklists": { + "type": "array", + "description": "Describes detection results against configured custom blocklists.", + "items": { + "$ref": "#/definitions/ContentFilterBlocklistIdResult" + }, + "x-ms-client-name": "customBlocklists" + }, + "error": { + "$ref": "#/definitions/Azure.Core.Foundations.Error", + "description": "Describes an error returned if the content filtering system is\ndown or otherwise unable to complete the operation in time." + }, + "jailbreak": { + "$ref": "#/definitions/ContentFilterDetectionResult", + "description": "Whether a jailbreak attempt was detected in the prompt." + } + } + }, + "ContentFilterResultsForChoice": { + "type": "object", + "description": "Information about content filtering evaluated against generated model output.", + "properties": { + "sexual": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language related to anatomical organs and genitals, romantic relationships,\n acts portrayed in erotic or affectionate terms, physical sexual acts, including\n those portrayed as an assault or a forced sexual violent act against one’s will,\n prostitution, pornography, and abuse." + }, + "violence": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language related to physical actions intended to hurt, injure, damage, or\nkill someone or something; describes weapons, etc." + }, + "hate": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language attacks or uses that include pejorative or discriminatory language\nwith reference to a person or identity group on the basis of certain differentiating\nattributes of these groups including but not limited to race, ethnicity, nationality,\ngender identity and expression, sexual orientation, religion, immigration status, ability\nstatus, personal appearance, and body size." + }, + "self_harm": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language related to physical actions intended to purposely hurt, injure,\nor damage one’s body, or kill oneself.", + "x-ms-client-name": "selfHarm" + }, + "profanity": { + "$ref": "#/definitions/ContentFilterDetectionResult", + "description": "Describes whether profanity was detected." + }, + "custom_blocklists": { + "type": "array", + "description": "Describes detection results against configured custom blocklists.", + "items": { + "$ref": "#/definitions/ContentFilterBlocklistIdResult" + }, + "x-ms-client-name": "customBlocklists" + }, + "error": { + "$ref": "#/definitions/Azure.Core.Foundations.Error", + "description": "Describes an error returned if the content filtering system is\ndown or otherwise unable to complete the operation in time." + }, + "protected_material_text": { + "$ref": "#/definitions/ContentFilterDetectionResult", + "description": "Information about detection of protected text material.", + "x-ms-client-name": "protectedMaterialText" + }, + "protected_material_code": { + "$ref": "#/definitions/ContentFilterCitedDetectionResult", + "description": "Information about detection of protected code material.", + "x-ms-client-name": "protectedMaterialCode" + } + } + }, + "ContentFilterResultsForPrompt": { + "type": "object", + "description": "Content filtering results for a single prompt in the request.", + "properties": { + "prompt_index": { + "type": "integer", + "format": "int32", + "description": "The index of this prompt in the set of prompt results", + "x-ms-client-name": "promptIndex" + }, + "content_filter_results": { + "$ref": "#/definitions/ContentFilterResultDetailsForPrompt", + "description": "Content filtering results for this prompt", + "x-ms-client-name": "contentFilterResults" + } + }, + "required": [ + "prompt_index", + "content_filter_results" + ] + }, + "ContentFilterSeverity": { + "type": "string", + "description": "Ratings for the intensity and risk level of harmful content.", + "enum": [ + "safe", + "low", + "medium", + "high" + ], + "x-ms-enum": { + "name": "ContentFilterSeverity", + "modelAsString": true, + "values": [ + { + "name": "safe", + "value": "safe", + "description": "Content may be related to violence, self-harm, sexual, or hate categories but the terms\nare used in general, journalistic, scientific, medical, and similar professional contexts,\nwhich are appropriate for most audiences." + }, + { + "name": "low", + "value": "low", + "description": "Content that expresses prejudiced, judgmental, or opinionated views, includes offensive\nuse of language, stereotyping, use cases exploring a fictional world (for example, gaming,\nliterature) and depictions at low intensity." + }, + { + "name": "medium", + "value": "medium", + "description": "Content that uses offensive, insulting, mocking, intimidating, or demeaning language\ntowards specific identity groups, includes depictions of seeking and executing harmful\ninstructions, fantasies, glorification, promotion of harm at medium intensity." + }, + { + "name": "high", + "value": "high", + "description": "Content that displays explicit and severe harmful instructions, actions,\ndamage, or abuse; includes endorsement, glorification, or promotion of severe\nharmful acts, extreme or illegal forms of harm, radicalization, or non-consensual\npower exchange or abuse." + } + ] + } + }, + "ElasticsearchChatExtensionConfiguration": { + "type": "object", + "description": "A specific representation of configurable options for Elasticsearch when using it as an Azure OpenAI chat\nextension.", + "properties": { + "parameters": { + "$ref": "#/definitions/ElasticsearchChatExtensionParameters", + "description": "The parameters to use when configuring Elasticsearch®." + } + }, + "required": [ + "parameters" + ], + "allOf": [ + { + "$ref": "#/definitions/AzureChatExtensionConfiguration" + } + ], + "x-ms-discriminator-value": "elasticsearch" + }, + "ElasticsearchChatExtensionParameters": { + "type": "object", + "description": "Parameters to use when configuring Elasticsearch® as an Azure OpenAI chat extension. The supported authentication types are KeyAndKeyId and EncodedAPIKey.", + "properties": { + "authentication": { + "$ref": "#/definitions/OnYourDataAuthenticationOptions", + "description": "The authentication method to use when accessing the defined data source.\nEach data source type supports a specific set of available authentication methods; please see the documentation of\nthe data source for supported mechanisms.\nIf not otherwise provided, On Your Data will attempt to use System Managed Identity (default credential)\nauthentication." + }, + "top_n_documents": { + "type": "integer", + "format": "int32", + "description": "The configured top number of documents to feature for the configured query.", + "x-ms-client-name": "topNDocuments" + }, + "in_scope": { + "type": "boolean", + "description": "Whether queries should be restricted to use of indexed data.", + "x-ms-client-name": "inScope" + }, + "strictness": { + "type": "integer", + "format": "int32", + "description": "The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.", + "minimum": 1, + "maximum": 5 + }, + "role_information": { + "type": "string", + "description": "Give the model instructions about how it should behave and any context it should reference when generating a response. You can describe the assistant's personality and tell it how to format responses. There's a 100 token limit for it, and it counts against the overall token limit.", + "x-ms-client-name": "roleInformation" + }, + "endpoint": { + "type": "string", + "format": "uri", + "description": "The endpoint of Elasticsearch®." + }, + "index_name": { + "type": "string", + "description": "The index name of Elasticsearch®.", + "x-ms-client-name": "indexName" + }, + "fields_mapping": { + "$ref": "#/definitions/ElasticsearchIndexFieldMappingOptions", + "description": "The index field mapping options of Elasticsearch®.", + "x-ms-client-name": "fieldsMapping" + }, + "query_type": { + "$ref": "#/definitions/ElasticsearchQueryType", + "description": "The query type of Elasticsearch®.", + "x-ms-client-name": "queryType" + }, + "embedding_dependency": { + "$ref": "#/definitions/OnYourDataVectorizationSource", + "description": "The embedding dependency for vector search.", + "x-ms-client-name": "embeddingDependency" + } + }, + "required": [ + "endpoint", + "index_name" + ] + }, + "ElasticsearchIndexFieldMappingOptions": { + "type": "object", + "description": "Optional settings to control how fields are processed when using a configured Elasticsearch® resource.", + "properties": { + "title_field": { + "type": "string", + "description": "The name of the index field to use as a title.", + "x-ms-client-name": "titleField" + }, + "url_field": { + "type": "string", + "description": "The name of the index field to use as a URL.", + "x-ms-client-name": "urlField" + }, + "filepath_field": { + "type": "string", + "description": "The name of the index field to use as a filepath.", + "x-ms-client-name": "filepathField" + }, + "content_fields": { + "type": "array", + "description": "The names of index fields that should be treated as content.", + "items": { + "type": "string" + }, + "x-ms-client-name": "contentFields" + }, + "content_fields_separator": { + "type": "string", + "description": "The separator pattern that content fields should use.", + "x-ms-client-name": "contentFieldsSeparator" + }, + "vector_fields": { + "type": "array", + "description": "The names of fields that represent vector data.", + "items": { + "type": "string" + }, + "x-ms-client-name": "vectorFields" + } + } + }, + "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." + } + ] + } + }, + "EmbeddingItem": { + "type": "object", + "description": "Representation of a single embeddings relatedness comparison.", + "properties": { + "embedding": { + "type": "array", + "description": "List of embeddings value for the input prompt. These represent a measurement of the\nvector-based relatedness of the provided input.", + "items": { + "type": "number", + "format": "float" + } + }, + "index": { + "type": "integer", + "format": "int32", + "description": "Index of the prompt to which the EmbeddingItem corresponds." + } + }, + "required": [ + "embedding", + "index" + ] + }, + "Embeddings": { + "type": "object", + "description": "Representation of the response data from an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.", + "properties": { + "data": { + "type": "array", + "description": "Embedding values for the prompts submitted in the request.", + "items": { + "$ref": "#/definitions/EmbeddingItem" + }, + "x-ms-identifiers": [] + }, + "usage": { + "$ref": "#/definitions/EmbeddingsUsage", + "description": "Usage counts for tokens input using the embeddings API." + } + }, + "required": [ + "data", + "usage" + ] + }, + "EmbeddingsOptions": { + "type": "object", + "description": "The configuration information for an embeddings request.\nEmbeddings measure the relatedness of text strings and are commonly used for search, clustering,\nrecommendations, and other similar scenarios.", + "properties": { + "user": { + "type": "string", + "description": "An identifier for the caller or end user of the operation. This may be used for tracking\nor rate-limiting purposes." + }, + "model": { + "type": "string", + "description": "The model name to provide as part of this embeddings request.\nNot applicable to Azure OpenAI, where deployment information should be included in the Azure\nresource URI that's connected to." + }, + "input": { + "type": "array", + "description": "Input texts to get embeddings for, encoded as a an array of strings.\nEach input must not exceed 2048 tokens in length.\n\nUnless you are embedding code, we suggest replacing newlines (\\n) in your input with a single space,\nas we have observed inferior results when newlines are present.", + "items": { + "type": "string" + } + }, + "input_type": { + "type": "string", + "description": "When using Azure OpenAI, specifies the input type to use for embedding search.", + "x-ms-client-name": "inputType" + } + }, + "required": [ + "input" + ] + }, + "EmbeddingsUsage": { + "type": "object", + "description": "Measurement of the amount of tokens used in this request and response.", + "properties": { + "prompt_tokens": { + "type": "integer", + "format": "int32", + "description": "Number of tokens sent in the original request.", + "x-ms-client-name": "promptTokens" + }, + "total_tokens": { + "type": "integer", + "format": "int32", + "description": "Total number of tokens transacted in this request/response.", + "x-ms-client-name": "totalTokens" + } + }, + "required": [ + "prompt_tokens", + "total_tokens" + ] + }, + "FunctionCall": { + "type": "object", + "description": "The name and arguments of a function that should be called, as generated by the model.", + "properties": { + "name": { + "type": "string", + "description": "The name of the function to call." + }, + "arguments": { + "type": "string", + "description": "The arguments to call the function with, as generated by the model in JSON format.\nNote that the model does not always generate valid JSON, and may hallucinate parameters\nnot defined by your function schema. Validate the arguments in your code before calling\nyour function." + } + }, + "required": [ + "name", + "arguments" + ] + }, + "FunctionDefinition": { + "type": "object", + "description": "The definition of a caller-specified function that chat completions may invoke in response to matching user input.", + "properties": { + "name": { + "type": "string", + "description": "The name of the function to be called." + }, + "description": { + "type": "string", + "description": "A description of what the function does. The model will use this description when selecting the function and\ninterpreting its parameters." + }, + "parameters": { + "description": "The parameters the function accepts, described as a JSON Schema object." + } + }, + "required": [ + "name" + ] + }, + "ImageGenerationContentFilterResults": { + "type": "object", + "description": "Describes the content filtering result for the image generation request.", + "properties": { + "sexual": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language related to anatomical organs and genitals, romantic relationships,\n acts portrayed in erotic or affectionate terms, physical sexual acts, including\n those portrayed as an assault or a forced sexual violent act against one’s will,\n prostitution, pornography, and abuse." + }, + "violence": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language related to physical actions intended to hurt, injure, damage, or\nkill someone or something; describes weapons, etc." + }, + "hate": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language attacks or uses that include pejorative or discriminatory language\nwith reference to a person or identity group on the basis of certain differentiating\nattributes of these groups including but not limited to race, ethnicity, nationality,\ngender identity and expression, sexual orientation, religion, immigration status, ability\nstatus, personal appearance, and body size." + }, + "self_harm": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language related to physical actions intended to purposely hurt, injure,\nor damage one’s body, or kill oneself.", + "x-ms-client-name": "selfHarm" + } + } + }, + "ImageGenerationData": { + "type": "object", + "description": "A representation of a single generated image, provided as either base64-encoded data or as a URL from which the image\nmay be retrieved.", + "properties": { + "url": { + "type": "string", + "format": "uri", + "description": "The URL that provides temporary access to download the generated image." + }, + "b64_json": { + "type": "string", + "description": "The complete data for an image, represented as a base64-encoded string.", + "x-ms-client-name": "base64Data" + }, + "content_filter_results": { + "$ref": "#/definitions/ImageGenerationContentFilterResults", + "description": "Information about the content filtering results.", + "x-ms-client-name": "contentFilterResults" + }, + "revised_prompt": { + "type": "string", + "description": "The final prompt used by the model to generate the image.\nOnly provided with dall-3-models and only when revisions were made to the prompt.", + "x-ms-client-name": "revisedPrompt" + }, + "prompt_filter_results": { + "$ref": "#/definitions/ImageGenerationPromptFilterResults", + "description": "Information about the content filtering category (hate, sexual, violence, self_harm), if\nit has been detected, as well as the severity level (very_low, low, medium, high-scale\nthat determines the intensity and risk level of harmful content) and if it has been\nfiltered or not. Information about jailbreak content and profanity, if it has been detected,\nand if it has been filtered or not. And information about customer block list, if it has\nbeen filtered and its id.", + "x-ms-client-name": "promptFilterResults" + } + } + }, + "ImageGenerationOptions": { + "type": "object", + "description": "Represents the request data used to generate images.", + "properties": { + "model": { + "type": "string", + "description": "The model name or Azure OpenAI model deployment name to use for image generation. If not specified, dall-e-2 will be\ninferred as a default." + }, + "prompt": { + "type": "string", + "description": "A description of the desired images." + }, + "n": { + "type": "integer", + "format": "int32", + "description": "The number of images to generate.\nDall-e-2 models support values between 1 and 10.\nDall-e-3 models only support a value of 1.", + "default": 1 + }, + "size": { + "type": "string", + "description": "The desired dimensions for generated images.\nDall-e-2 models support 256x256, 512x512, or 1024x1024.\nDall-e-3 models support 1024x1024, 1792x1024, or 1024x1792.", + "default": "1024x1024", + "enum": [ + "256x256", + "512x512", + "1024x1024", + "1792x1024", + "1024x1792" + ], + "x-ms-enum": { + "name": "ImageSize", + "modelAsString": true, + "values": [ + { + "name": "size256x256", + "value": "256x256", + "description": "Very small image size of 256x256 pixels.\nOnly supported with dall-e-2 models." + }, + { + "name": "size512x512", + "value": "512x512", + "description": "A smaller image size of 512x512 pixels.\nOnly supported with dall-e-2 models." + }, + { + "name": "size1024x1024", + "value": "1024x1024", + "description": "A standard, square image size of 1024x1024 pixels.\nSupported by both dall-e-2 and dall-e-3 models." + }, + { + "name": "size1792x1024", + "value": "1792x1024", + "description": "A wider image size of 1024x1792 pixels.\nOnly supported with dall-e-3 models." + }, + { + "name": "size1024x1792", + "value": "1024x1792", + "description": "A taller image size of 1792x1024 pixels.\nOnly supported with dall-e-3 models." + } + ] + } + }, + "response_format": { + "type": "string", + "description": "The format in which image generation response items should be presented.", + "default": "url", + "enum": [ + "url", + "b64_json" + ], + "x-ms-enum": { + "name": "ImageGenerationResponseFormat", + "modelAsString": true, + "values": [ + { + "name": "url", + "value": "url", + "description": "Image generation response items should provide a URL from which the image may be retrieved." + }, + { + "name": "base64", + "value": "b64_json", + "description": "Image generation response items should provide image data as a base64-encoded string." + } + ] + }, + "x-ms-client-name": "responseFormat" + }, + "quality": { + "type": "string", + "description": "The desired image generation quality level to use.\nOnly configurable with dall-e-3 models.", + "default": "standard", + "enum": [ + "standard", + "hd" + ], + "x-ms-enum": { + "name": "ImageGenerationQuality", + "modelAsString": true, + "values": [ + { + "name": "standard", + "value": "standard", + "description": "Requests image generation with standard, balanced characteristics of quality, cost, and speed." + }, + { + "name": "hd", + "value": "hd", + "description": "Requests image generation with higher quality, higher cost and lower speed relative to standard." + } + ] + } + }, + "style": { + "type": "string", + "description": "The desired image generation style to use.\nOnly configurable with dall-e-3 models.", + "default": "vivid", + "enum": [ + "natural", + "vivid" + ], + "x-ms-enum": { + "name": "ImageGenerationStyle", + "modelAsString": true, + "values": [ + { + "name": "natural", + "value": "natural", + "description": "Requests image generation in a natural style with less preference for dramatic and hyper-realistic characteristics." + }, + { + "name": "vivid", + "value": "vivid", + "description": "Requests image generation in a vivid style with a higher preference for dramatic and hyper-realistic\ncharacteristics." + } + ] + } + }, + "user": { + "type": "string", + "description": "A unique identifier representing your end-user, which can help to monitor and detect abuse." + } + }, + "required": [ + "prompt" + ] + }, + "ImageGenerationPromptFilterResults": { + "type": "object", + "description": "Describes the content filtering results for the prompt of a image generation request.", + "properties": { + "sexual": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language related to anatomical organs and genitals, romantic relationships,\n acts portrayed in erotic or affectionate terms, physical sexual acts, including\n those portrayed as an assault or a forced sexual violent act against one’s will,\n prostitution, pornography, and abuse." + }, + "violence": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language related to physical actions intended to hurt, injure, damage, or\nkill someone or something; describes weapons, etc." + }, + "hate": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language attacks or uses that include pejorative or discriminatory language\nwith reference to a person or identity group on the basis of certain differentiating\nattributes of these groups including but not limited to race, ethnicity, nationality,\ngender identity and expression, sexual orientation, religion, immigration status, ability\nstatus, personal appearance, and body size." + }, + "self_harm": { + "$ref": "#/definitions/ContentFilterResult", + "description": "Describes language related to physical actions intended to purposely hurt, injure,\nor damage one’s body, or kill oneself.", + "x-ms-client-name": "selfHarm" + }, + "profanity": { + "$ref": "#/definitions/ContentFilterDetectionResult", + "description": "Describes whether profanity was detected." + }, + "jailbreak": { + "$ref": "#/definitions/ContentFilterDetectionResult", + "description": "Whether a jailbreak attempt was detected in the prompt." + } + } + }, + "ImageGenerations": { + "type": "object", + "description": "The result of a successful image generation operation.", + "properties": { + "created": { + "type": "integer", + "format": "unixtime", + "description": "A timestamp representing when this operation was started.\nExpressed in seconds since the Unix epoch of 1970-01-01T00:00:00+0000." + }, + "data": { + "type": "array", + "description": "The images generated by the operation.", + "items": { + "$ref": "#/definitions/ImageGenerationData" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "created", + "data" + ] + }, + "MaxTokensFinishDetails": { + "type": "object", + "description": "A structured representation of a stop reason that signifies a token limit was reached before the model could naturally\ncomplete.", + "allOf": [ + { + "$ref": "#/definitions/ChatFinishDetails" + } + ], + "x-ms-discriminator-value": "max_tokens" + }, + "OnYourDataAccessTokenAuthenticationOptions": { + "type": "object", + "description": "The authentication options for Azure OpenAI On Your Data when using access token.", + "properties": { + "access_token": { + "type": "string", + "description": "The access token to use for authentication.", + "x-ms-client-name": "accessToken" + } + }, + "required": [ + "access_token" + ], + "allOf": [ + { + "$ref": "#/definitions/OnYourDataAuthenticationOptions" + } + ], + "x-ms-discriminator-value": "access_token" + }, + "OnYourDataApiKeyAuthenticationOptions": { + "type": "object", + "description": "The authentication options for Azure OpenAI On Your Data when using an API key.", + "properties": { + "key": { + "type": "string", + "description": "The API key to use for authentication." + } + }, + "required": [ + "key" + ], + "allOf": [ + { + "$ref": "#/definitions/OnYourDataAuthenticationOptions" + } + ], + "x-ms-discriminator-value": "api_key" + }, + "OnYourDataAuthenticationOptions": { + "type": "object", + "description": "The authentication options for Azure OpenAI On Your Data.", + "properties": { + "type": { + "$ref": "#/definitions/OnYourDataAuthenticationType", + "description": "The authentication type." + } + }, + "discriminator": "type", + "required": [ + "type" + ] + }, + "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" + ], + "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." + } + ] + } + }, + "OnYourDataConnectionStringAuthenticationOptions": { + "type": "object", + "description": "The authentication options for Azure OpenAI On Your Data when using a connection string.", + "properties": { + "connection_string": { + "type": "string", + "description": "The connection string to use for authentication.", + "x-ms-client-name": "connectionString" + } + }, + "required": [ + "connection_string" + ], + "allOf": [ + { + "$ref": "#/definitions/OnYourDataAuthenticationOptions" + } + ], + "x-ms-discriminator-value": "connection_string" + }, + "OnYourDataDeploymentNameVectorizationSource": { + "type": "object", + "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.", + "properties": { + "deployment_name": { + "type": "string", + "description": "The embedding model deployment name within the same Azure OpenAI resource. This enables you to use vector search without Azure OpenAI api-key and without Azure OpenAI public network access.", + "x-ms-client-name": "deploymentName" + } + }, + "required": [ + "deployment_name" + ], + "allOf": [ + { + "$ref": "#/definitions/OnYourDataVectorizationSource" + } + ], + "x-ms-discriminator-value": "deployment_name" + }, + "OnYourDataEncodedApiKeyAuthenticationOptions": { + "type": "object", + "description": "The authentication options for Azure OpenAI On Your Data when using an Elasticsearch encoded API key.", + "properties": { + "encoded_api_key": { + "type": "string", + "description": "The encoded API key to use for authentication.", + "x-ms-client-name": "encodedApiKey" + } + }, + "required": [ + "encoded_api_key" + ], + "allOf": [ + { + "$ref": "#/definitions/OnYourDataAuthenticationOptions" + } + ], + "x-ms-discriminator-value": "encoded_api_key" + }, + "OnYourDataEndpointVectorizationSource": { + "type": "object", + "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.", + "properties": { + "endpoint": { + "type": "string", + "format": "uri", + "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." + }, + "authentication": { + "$ref": "#/definitions/OnYourDataAuthenticationOptions", + "description": "Specifies the authentication options to use when retrieving embeddings from the specified endpoint." + } + }, + "required": [ + "endpoint", + "authentication" + ], + "allOf": [ + { + "$ref": "#/definitions/OnYourDataVectorizationSource" + } + ], + "x-ms-discriminator-value": "endpoint" + }, + "OnYourDataKeyAndKeyIdAuthenticationOptions": { + "type": "object", + "description": "The authentication options for Azure OpenAI On Your Data when using an Elasticsearch key and key ID pair.", + "properties": { + "key": { + "type": "string", + "description": "The key to use for authentication." + }, + "key_id": { + "type": "string", + "description": "The key ID to use for authentication.", + "x-ms-client-name": "keyId" + } + }, + "required": [ + "key", + "key_id" + ], + "allOf": [ + { + "$ref": "#/definitions/OnYourDataAuthenticationOptions" + } + ], + "x-ms-discriminator-value": "key_and_key_id" + }, + "OnYourDataModelIdVectorizationSource": { + "type": "object", + "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®.", + "properties": { + "model_id": { + "type": "string", + "description": "The embedding model ID build inside the search service. Currently only supported by Elasticsearch®.", + "x-ms-client-name": "modelId" + } + }, + "required": [ + "model_id" + ], + "allOf": [ + { + "$ref": "#/definitions/OnYourDataVectorizationSource" + } + ], + "x-ms-discriminator-value": "model_id" + }, + "OnYourDataSystemAssignedManagedIdentityAuthenticationOptions": { + "type": "object", + "description": "The authentication options for Azure OpenAI On Your Data when using a system-assigned managed identity.", + "allOf": [ + { + "$ref": "#/definitions/OnYourDataAuthenticationOptions" + } + ], + "x-ms-discriminator-value": "system_assigned_managed_identity" + }, + "OnYourDataUserAssignedManagedIdentityAuthenticationOptions": { + "type": "object", + "description": "The authentication options for Azure OpenAI On Your Data when using a user-assigned managed identity.", + "properties": { + "managed_identity_resource_id": { + "type": "string", + "description": "The resource ID of the user-assigned managed identity to use for authentication.", + "x-ms-client-name": "managedIdentityResourceId" + } + }, + "required": [ + "managed_identity_resource_id" + ], + "allOf": [ + { + "$ref": "#/definitions/OnYourDataAuthenticationOptions" + } + ], + "x-ms-discriminator-value": "user_assigned_managed_identity" + }, + "OnYourDataVectorizationSource": { + "type": "object", + "description": "An abstract representation of a vectorization source for Azure OpenAI On Your Data with vector search.", + "properties": { + "type": { + "$ref": "#/definitions/OnYourDataVectorizationSourceType", + "description": "The type of vectorization source to use." + } + }, + "discriminator": "type", + "required": [ + "type" + ] + }, + "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", + "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": "modelId", + "value": "model_id", + "description": "Represents a specific embedding model ID as defined in the search service.\nCurrently only supported by Elasticsearch®." + } + ] + } + }, + "PineconeChatExtensionConfiguration": { + "type": "object", + "description": "A specific representation of configurable options for Pinecone when using it as an Azure OpenAI chat\nextension.", + "properties": { + "parameters": { + "$ref": "#/definitions/PineconeChatExtensionParameters", + "description": "The parameters to use when configuring Azure OpenAI chat extensions." + } + }, + "required": [ + "parameters" + ], + "allOf": [ + { + "$ref": "#/definitions/AzureChatExtensionConfiguration" + } + ], + "x-ms-discriminator-value": "pinecone" + }, + "PineconeChatExtensionParameters": { + "type": "object", + "description": "Parameters for configuring Azure OpenAI Pinecone chat extensions. The supported authentication type is APIKey.", + "properties": { + "authentication": { + "$ref": "#/definitions/OnYourDataAuthenticationOptions", + "description": "The authentication method to use when accessing the defined data source.\nEach data source type supports a specific set of available authentication methods; please see the documentation of\nthe data source for supported mechanisms.\nIf not otherwise provided, On Your Data will attempt to use System Managed Identity (default credential)\nauthentication." + }, + "top_n_documents": { + "type": "integer", + "format": "int32", + "description": "The configured top number of documents to feature for the configured query.", + "x-ms-client-name": "topNDocuments" + }, + "in_scope": { + "type": "boolean", + "description": "Whether queries should be restricted to use of indexed data.", + "x-ms-client-name": "inScope" + }, + "strictness": { + "type": "integer", + "format": "int32", + "description": "The configured strictness of the search relevance filtering. The higher of strictness, the higher of the precision but lower recall of the answer.", + "minimum": 1, + "maximum": 5 + }, + "role_information": { + "type": "string", + "description": "Give the model instructions about how it should behave and any context it should reference when generating a response. You can describe the assistant's personality and tell it how to format responses. There's a 100 token limit for it, and it counts against the overall token limit.", + "x-ms-client-name": "roleInformation" + }, + "environment": { + "type": "string", + "description": "The environment name of Pinecone." + }, + "index_name": { + "type": "string", + "description": "The name of the Pinecone database index.", + "x-ms-client-name": "indexName" + }, + "fields_mapping": { + "$ref": "#/definitions/PineconeFieldMappingOptions", + "description": "Customized field mapping behavior to use when interacting with the search index.", + "x-ms-client-name": "fieldsMapping" + }, + "embedding_dependency": { + "$ref": "#/definitions/OnYourDataVectorizationSource", + "description": "The embedding dependency for vector search.", + "x-ms-client-name": "embeddingDependency" + } + }, + "required": [ + "environment", + "index_name", + "fields_mapping", + "embedding_dependency" + ] + }, + "PineconeFieldMappingOptions": { + "type": "object", + "description": "Optional settings to control how fields are processed when using a configured Pinecone resource.", + "properties": { + "title_field": { + "type": "string", + "description": "The name of the index field to use as a title.", + "x-ms-client-name": "titleField" + }, + "url_field": { + "type": "string", + "description": "The name of the index field to use as a URL.", + "x-ms-client-name": "urlField" + }, + "filepath_field": { + "type": "string", + "description": "The name of the index field to use as a filepath.", + "x-ms-client-name": "filepathField" + }, + "content_fields": { + "type": "array", + "description": "The names of index fields that should be treated as content.", + "items": { + "type": "string" + }, + "x-ms-client-name": "contentFields" + }, + "content_fields_separator": { + "type": "string", + "description": "The separator pattern that content fields should use.", + "x-ms-client-name": "contentFieldsSeparator" + } + }, + "required": [ + "content_fields" + ] + }, + "SpeechGenerationOptions": { + "type": "object", + "description": "A representation of the request options that control the behavior of a text-to-speech operation.", + "properties": { + "input": { + "type": "string", + "description": "The text to generate audio for. The maximum length is 4096 characters.", + "maxLength": 4096 + }, + "voice": { + "$ref": "#/definitions/SpeechVoice", + "description": "The voice to use for text-to-speech." + }, + "response_format": { + "type": "string", + "description": "The audio output format for the spoken text. By default, the MP3 format will be used.", + "default": "mp3", + "enum": [ + "mp3", + "opus", + "aac", + "flac" + ], + "x-ms-enum": { + "name": "SpeechGenerationResponseFormat", + "modelAsString": true, + "values": [ + { + "name": "mp3", + "value": "mp3", + "description": "Use MP3 as the audio output format. MP3 is the default, general-purpose format." + }, + { + "name": "opus", + "value": "opus", + "description": "Use Opus as the audio output format. Opus is optimized for internet streaming and low latency." + }, + { + "name": "aac", + "value": "aac", + "description": "Use AAC as the audio output format. AAC is optimized for digital audio compression and is preferred by YouTube, Android, and iOS." + }, + { + "name": "flac", + "value": "flac", + "description": "Use FLAC as the audio output format. FLAC is a fully lossless format optimized for maximum quality at the expense of size." + } + ] + }, + "x-ms-client-name": "responseFormat" + }, + "speed": { + "type": "number", + "format": "float", + "description": "The speed of speech for generated audio. Values are valid in the range from 0.25 to 4.0, with 1.0 the default and higher values corresponding to faster speech.", + "default": 1, + "minimum": 0.25, + "maximum": 4 + }, + "model": { + "type": "string", + "description": "The model to use for this text-to-speech request." + } + }, + "required": [ + "input", + "voice" + ] + }, + "SpeechVoice": { + "type": "string", + "description": "The available voices for text-to-speech.", + "enum": [ + "alloy", + "echo", + "fable", + "onyx", + "nova", + "shimmer" + ], + "x-ms-enum": { + "name": "SpeechVoice", + "modelAsString": true, + "values": [ + { + "name": "alloy", + "value": "alloy", + "description": "The Alloy voice." + }, + { + "name": "echo", + "value": "echo", + "description": "The Echo voice." + }, + { + "name": "fable", + "value": "fable", + "description": "The Fable voice." + }, + { + "name": "onyx", + "value": "onyx", + "description": "The Onyx voice." + }, + { + "name": "nova", + "value": "nova", + "description": "The Nova voice." + }, + { + "name": "shimmer", + "value": "shimmer", + "description": "The Shimmer voice." + } + ] + } + }, + "StopFinishDetails": { + "type": "object", + "description": "A structured representation of a stop reason that signifies natural termination by the model.", + "properties": { + "stop": { + "type": "string", + "description": "The token sequence that the model terminated with." + } + }, + "required": [ + "stop" + ], + "allOf": [ + { + "$ref": "#/definitions/ChatFinishDetails" + } + ], + "x-ms-discriminator-value": "stop" + } + }, + "parameters": { + "AudioTranscriptionOptions.file": { + "name": "file", + "in": "formData", + "description": "The audio data to transcribe. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file", + "x-ms-parameter-location": "method" + }, + "AudioTranscriptionOptions.filename": { + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AudioTranscriptionOptions.language": { + "name": "language", + "in": "formData", + "description": "The primary spoken language of the audio data to be transcribed, supplied as a two-letter ISO-639-1 language code\nsuch as 'en' or 'fr'.\nProviding this known input language is optional but may improve the accuracy and/or latency of transcription.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AudioTranscriptionOptions.model": { + "name": "model", + "in": "formData", + "description": "The model to use for this transcription request.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AudioTranscriptionOptions.prompt": { + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AudioTranscriptionOptions.responseFormat": { + "name": "response_format", + "in": "formData", + "description": "The requested format of the transcription response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranscriptionFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the transcription." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing transcription text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated transcription." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-parameter-location": "method", + "x-ms-client-name": "responseFormat" + }, + "AudioTranscriptionOptions.temperature": { + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float", + "x-ms-parameter-location": "method" + }, + "AudioTranslationOptions.file": { + "name": "file", + "in": "formData", + "description": "The audio data to translate. This must be the binary content of a file in one of the supported media formats:\n flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm.", + "required": true, + "type": "file", + "x-ms-parameter-location": "method" + }, + "AudioTranslationOptions.filename": { + "name": "filename", + "in": "formData", + "description": "The optional filename or descriptive identifier to associate with with the audio data.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AudioTranslationOptions.model": { + "name": "model", + "in": "formData", + "description": "The model to use for this translation request.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AudioTranslationOptions.prompt": { + "name": "prompt", + "in": "formData", + "description": "An optional hint to guide the model's style or continue from a prior audio segment. The written language of the\nprompt should match the primary spoken language of the audio data.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AudioTranslationOptions.responseFormat": { + "name": "response_format", + "in": "formData", + "description": "The requested format of the translation response data, which will influence the content and detail of the result.", + "required": false, + "type": "string", + "enum": [ + "json", + "verbose_json", + "text", + "srt", + "vtt" + ], + "x-ms-enum": { + "name": "AudioTranslationFormat", + "modelAsString": true, + "values": [ + { + "name": "json", + "value": "json", + "description": "Use a response body that is a JSON object containing a single 'text' field for the translation." + }, + { + "name": "verbose_json", + "value": "verbose_json", + "description": "Use a response body that is a JSON object containing translation text along with timing, segments, and other\nmetadata." + }, + { + "name": "text", + "value": "text", + "description": "Use a response body that is plain text containing the raw, unannotated translation." + }, + { + "name": "srt", + "value": "srt", + "description": "Use a response body that is plain text in SubRip (SRT) format that also includes timing information." + }, + { + "name": "vtt", + "value": "vtt", + "description": "Use a response body that is plain text in Web Video Text Tracks (VTT) format that also includes timing information." + } + ] + }, + "x-ms-parameter-location": "method", + "x-ms-client-name": "responseFormat" + }, + "AudioTranslationOptions.temperature": { + "name": "temperature", + "in": "formData", + "description": "The sampling temperature, between 0 and 1.\nHigher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.\nIf set to 0, the model will use log probability to automatically increase the temperature until certain thresholds are hit.", + "required": false, + "type": "number", + "format": "float", + "x-ms-parameter-location": "method" + }, + "Azure.Core.Foundations.ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method", + "x-ms-client-name": "apiVersion" + } + } +} diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/readme.md b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/readme.md index e790f98c60b08..6faacd21db319 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/readme.md +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/readme.md @@ -175,3 +175,10 @@ directive: - suppress: RequiredReadOnlyProperties reason: Parameter is read only ``` + +## AzureOpenAI 2024-02-15-preview (generated) +These settings apply only when `--tag=release_2024_02_15_preview_autogen` is specified on the command line. + +``` yaml $(tag) == 'release_2024_02_15_preview_autogen' +input-file: preview/2024-02-15-preview/generated.json +``` diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2022-12-01/generated.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2022-12-01/generated.json index 5524d13f42eb8..b55dcf7f754cf 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2022-12-01/generated.json +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2022-12-01/generated.json @@ -427,6 +427,10 @@ "format": "int32", "description": "A value that controls the emission of log probabilities for the provided number of most likely\ntokens within a completions response." }, + "suffix": { + "type": "string", + "description": "The suffix that comes after a completion of inserted text" + }, "echo": { "type": "boolean", "description": "A value specifying whether completions responses should include input prompts as prefixes to\ntheir generated output." diff --git a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2023-05-15/generated.json b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2023-05-15/generated.json index 3369820977c1c..d2a02c008396b 100644 --- a/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2023-05-15/generated.json +++ b/specification/cognitiveservices/data-plane/AzureOpenAI/inference/stable/2023-05-15/generated.json @@ -751,6 +751,10 @@ "format": "int32", "description": "A value that controls the emission of log probabilities for the provided number of most likely\ntokens within a completions response." }, + "suffix": { + "type": "string", + "description": "The suffix that comes after a completion of inserted text" + }, "echo": { "type": "boolean", "description": "A value specifying whether completions responses should include input prompts as prefixes to\ntheir generated output." diff --git a/specification/communication/Communication.Messages/.gitignore b/specification/communication/Communication.Messages/.gitignore new file mode 100644 index 0000000000000..eb8fd25336b83 --- /dev/null +++ b/specification/communication/Communication.Messages/.gitignore @@ -0,0 +1,3 @@ +**/package.json +**/package-lock.json +**/.npmrc \ No newline at end of file diff --git a/specification/communication/Communication.Messages/README.md b/specification/communication/Communication.Messages/README.md new file mode 100644 index 0000000000000..4e620369562c2 --- /dev/null +++ b/specification/communication/Communication.Messages/README.md @@ -0,0 +1,68 @@ +# Azure Communication Messages TypeSpec Specification + +The TypeSpec and generated API specification for the Azure Communication Messages. + +## Development Environment + +0. Change directory into the `specification\communication\Communication.Messages\` directory. + +1. Install Node.js 16 LTS and ensure you are able to run the npm command in a command prompt: + + ```console + npm --version + ``` + +2. Install Azure DevOps Auth helper for npm to pull the libraries from the secured feed + + ```console + npm install -g vsts-npm-auth + vsts-npm-auth -config .npmrc + ``` + +3. Install TypeSpec compiler and libraries: + + ```console + npm install -g @typespec/compiler + ``` + +4. (Optional) Install the TypeSpec extension for your editor of choice: + + - Visual Studio Code + + ``` console + tsp code install + ``` + + - Visual Studio + + ``` console + tsp vs install + ``` + +5. Install node package dependencies: + + ```console + tsp install + ``` + +6. Compile TypeSpec to Swagger. This will update the files in the directory `..\data-plane\Messages\\\communicationservicesmessages.json`: + + ```console + npx tsp compile specification\communication\Communication.Messages + ``` + +7. To re-generate examples, download and install the [OAV + tool](https://github.com/Azure/oav) and run it: note: This directory is taken + from [azure-rest-api-specs](https://github.com/Azure/azure-rest-api-specs), + and the following commands should be run from there. + + ```console + npm install -g oav@latest + oav generate-examples + ``` + +## Testing and Viewing API as an Interface + +1. Visit the official [Swagger Editor](https://editor.swagger.io/). + +2. Copy the generated Swagger from `communicationservicesmessages.json` and paste it into the editor. \ No newline at end of file diff --git a/specification/communication/Communication.Messages/client.tsp b/specification/communication/Communication.Messages/client.tsp new file mode 100644 index 0000000000000..544a83a086e2e --- /dev/null +++ b/specification/communication/Communication.Messages/client.tsp @@ -0,0 +1,33 @@ +// client.tsp +import "@azure-tools/typespec-client-generator-core"; +import "@typespec/versioning"; + +import "./main.tsp"; + +using Azure.ClientGenerator.Core; +using TypeSpec.Versioning; + +@useDependency(Azure.Communication.MessagesService.Versions.c2024_02_01) +namespace ClientForAcsMessages; + +@client({ + name: "NotificationMessagesClient", + service: Azure.Communication.MessagesService, +}) +interface NotificationMessagesClient + extends Azure.Communication.MessagesService.NotificationMessagesOperations { + @access(Access.internal, "csharp") + @projectedName("csharp", "downloadMediaInternal") + downloadMedia is Azure.Communication.MessagesService.StreamOperations.getMedia; +} + +@client({ + name: "MessageTemplateClient", + service: Azure.Communication.MessagesService, +}) +interface MessageTemplateClient + extends Azure.Communication.MessagesService.TemplateOperations {} + +@@access(Azure.Communication.MessagesService.MessageDataStream, + Access.internal +); diff --git a/specification/communication/Communication.Messages/examples/2024-02-01/NotificationMessages_SendImage.json b/specification/communication/Communication.Messages/examples/2024-02-01/NotificationMessages_SendImage.json new file mode 100644 index 0000000000000..faf6637ec2ba1 --- /dev/null +++ b/specification/communication/Communication.Messages/examples/2024-02-01/NotificationMessages_SendImage.json @@ -0,0 +1,30 @@ +{ + "title": "Sends a notification message - image", + "operationId": "NotificationMessagesOperations_Send", + "parameters": { + "api-version": "2024-02-01", + "content-type": "application/json", + "body": { + "channelRegistrationId": "0f0eb78e-a576-1dfc-b414-0f0756de3338", + "to": [ + "14250000000" + ], + "kind": "image", + "mediaUri": "https://example.com/image.jpg", + "content": "check out this image!" + }, + "endpoint": "https://my-resource.communication.azure.com" + }, + "responses": { + "202": { + "body": { + "receipts": [ + { + "messageId": "320fc2a1-4c4b-4387-9c1a-bd38b57795de", + "to": "14250000000" + } + ] + } + } + } +} diff --git a/specification/communication/Communication.Messages/examples/2024-02-01/NotificationMessages_SendTemplate.json b/specification/communication/Communication.Messages/examples/2024-02-01/NotificationMessages_SendTemplate.json new file mode 100644 index 0000000000000..60a43d372ac1a --- /dev/null +++ b/specification/communication/Communication.Messages/examples/2024-02-01/NotificationMessages_SendTemplate.json @@ -0,0 +1,55 @@ +{ + "title": "Sends a notification message - Template", + "operationId": "NotificationMessagesOperations_Send", + "parameters": { + "api-version": "2024-02-01", + "content-type": "application/json", + "body": { + "channelRegistrationId": "0f0eb78e-a576-1dfc-b414-0f0756de3338", + "to": [ + "14250000000" + ], + "kind": "template", + "template": { + "name": "example", + "language": "en", + "values": [ + { + "name": "userName", + "kind": "text", + "text": "John Doe" + }, + { + "name": "orderNumber", + "kind": "text", + "text": "12345" + } + ], + "bindings": { + "body": [ + { + "refValue": "userName" + }, + { + "refValue": "orderNumber" + } + ], + "kind": "whatsApp" + } + } + }, + "endpoint": "https://my-resource.communication.azure.com" + }, + "responses": { + "202": { + "body": { + "receipts": [ + { + "messageId": "320fc2a1-4c4b-4387-9c1a-bd38b57795de", + "to": "14250000000" + } + ] + } + } + } +} diff --git a/specification/communication/Communication.Messages/examples/2024-02-01/NotificationMessages_SendText.json b/specification/communication/Communication.Messages/examples/2024-02-01/NotificationMessages_SendText.json new file mode 100644 index 0000000000000..60c7fb4c0ce59 --- /dev/null +++ b/specification/communication/Communication.Messages/examples/2024-02-01/NotificationMessages_SendText.json @@ -0,0 +1,29 @@ +{ + "title": "Sends a notification message - text", + "operationId": "NotificationMessagesOperations_Send", + "parameters": { + "api-version": "2024-02-01", + "content-type": "application/json", + "body": { + "channelRegistrationId": "0f0eb78e-a576-1dfc-b414-0f0756de3338", + "to": [ + "14250000000" + ], + "kind": "text", + "content": "Text message through CPM" + }, + "endpoint": "https://my-resource.communication.azure.com" + }, + "responses": { + "202": { + "body": { + "receipts": [ + { + "messageId": "320fc2a1-4c4b-4387-9c1a-bd38b57795de", + "to": "14250000000" + } + ] + } + } + } +} diff --git a/specification/communication/Communication.Messages/examples/2024-02-01/Stream_GetMedia.json b/specification/communication/Communication.Messages/examples/2024-02-01/Stream_GetMedia.json new file mode 100644 index 0000000000000..c1a94465afd96 --- /dev/null +++ b/specification/communication/Communication.Messages/examples/2024-02-01/Stream_GetMedia.json @@ -0,0 +1,15 @@ +{ + "title": "Download media", + "operationId": "StreamOperations_GetMedia", + "parameters": { + "api-version": "2024-02-01", + "content-type": "application/json", + "id": "d19e68ec-bdd6-4a50-8dfb-cbb1642df6ab", + "endpoint": "https://my-resource.communication.azure.com" + }, + "responses": { + "200": { + "body": "" + } + } +} diff --git a/specification/communication/Communication.Messages/examples/2024-02-01/Template_ListTemplates.json b/specification/communication/Communication.Messages/examples/2024-02-01/Template_ListTemplates.json new file mode 100644 index 0000000000000..b4619af170699 --- /dev/null +++ b/specification/communication/Communication.Messages/examples/2024-02-01/Template_ListTemplates.json @@ -0,0 +1,35 @@ +{ + "title": "Gets a list of templates", + "operationId": "TemplateOperations_ListTemplates", + "parameters": { + "api-version": "2024-02-01", + "content-type": "application/json", + "channelId": "0f0eb78e-a576-1dfc-b414-0f0756de3338", + "endpoint": "https://my-resource.communication.azure.com" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "sample_shipping_confirmation", + "language": "en_US", + "status": "approved", + "kind": "whatsApp", + "content": [ + { + "type": "BODY", + "text": "Your package has been shipped. It will be delivered in {{1}} business days." + }, + { + "type": "FOOTER", + "text": "This message is from an unverified business." + } + ] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/communication/Communication.Messages/main.tsp b/specification/communication/Communication.Messages/main.tsp new file mode 100644 index 0000000000000..ac4fc3e50ec26 --- /dev/null +++ b/specification/communication/Communication.Messages/main.tsp @@ -0,0 +1,32 @@ +import "@typespec/rest"; +import "@typespec/http"; +import "@typespec/versioning"; +import "@azure-tools/typespec-azure-core"; +import "./routes.tsp"; + +using TypeSpec.Http; +using TypeSpec.Rest; +using TypeSpec.Versioning; +using Azure.Core; +using Azure.Core.Traits; + +@useAuth( + AadOauth2Auth<["https://communication.azure.com/.default"]> | ApiKeyAuth< + ApiKeyLocation.header, + "Authorization" + > +) +@service({ + title: "CommunicationMessagesClient", +}) +@server( + "{endpoint}", + "Azure Communication Messages Service", + { + @doc("The communication resource, for example https://my-resource.communication.azure.com") + endpoint: url, + } +) +@versioned(Versions) +@doc("Azure Communication Messages Service") +namespace Azure.Communication.MessagesService; diff --git a/specification/communication/Communication.Messages/models.tsp b/specification/communication/Communication.Messages/models.tsp new file mode 100644 index 0000000000000..76300f055b8c5 --- /dev/null +++ b/specification/communication/Communication.Messages/models.tsp @@ -0,0 +1,362 @@ +import "@typespec/rest"; +import "@typespec/http"; +import "@typespec/versioning"; +import "@azure-tools/typespec-azure-core"; + +using TypeSpec.Http; +using TypeSpec.Rest; +using TypeSpec.Versioning; +using Azure.Core; +using Azure.Core.Traits; + +@versioned(Azure.Communication.MessagesService.Versions) +namespace Azure.Communication.MessagesService; + +@doc("The type of message. Supports text, image, template.") +enum CommunicationMessageKind { + @doc("Text message type.") + text, + + @doc("Image message type.") + image, + + @doc("Template message type.") + template, +} + +@doc("The WhatsApp button sub type.") +enum WhatsAppMessageButtonSubType { + @doc("The WhatsApp button sub type is quick reply.") + quickReply, + + @doc("The WhatsApp button sub type is url.") + url, +} + +@doc("The aggregated template status.") +enum MessageTemplateStatus { + @doc("Message template is approved.") + approved, + + @doc("Message template is rejected.") + rejected, + + @doc("Message template is pending.") + pending, + + @doc("Message template is paused.") + paused, +} + +@doc("The type of the template parameter.") +enum MessageTemplateValueKind { + @doc("The text template parameter type.") + text, + + @doc("The image template parameter type.") + image, + + @doc("The document template parameter type.") + document, + + @doc("The video template parameter type.") + video, + + @doc("The location template parameter type.") + location, + + @doc("The quick action template parameter type.") + quickAction, +} + +@doc("The type of the communication messages channel.") +enum CommunicationMessagesChannel { + @doc("The WhatsApp communication messages channel type.") + whatsApp, +} + +@doc("The type of the message template.") +enum MessageTemplateBindingsKind { + @doc("The WhatsApp template type.") + whatsApp, +} + +@discriminator("kind") +@doc("Details of the message to send.") +model NotificationContent { + @doc("The Channel Registration ID for the Business Identifier.") + channelRegistrationId: uuid; + + @doc("The native external platform user identifiers of the recipient.") + to: string[]; + + @doc("The type discriminator describing a notification type.") + kind: CommunicationMessageKind; +} + +@doc("A request to send a text notification.") +model TextNotificationContent extends NotificationContent { + @doc("Message notification type is text.") + kind: CommunicationMessageKind.text; + + @doc("Message content.") + content: string; +} + +@doc("A request to send a media notification.") +model MediaNotificationContent extends NotificationContent { + @doc("Message notification type is image.") + kind: CommunicationMessageKind.image; + + @doc("Optional text content.") + content?: string; + + @projectedName("java", "mediaUrl") + @doc("A media url for the file. Required if the type is one of the supported media types, e.g. image") + mediaUri: url; +} + +@doc("A request to send a template notification.") +model TemplateNotificationContent extends NotificationContent { + @doc("Message notification type is template.") + kind: CommunicationMessageKind.template; + + @doc("The template object used to create templates.") + template: MessageTemplate; +} + +@doc("The template object used to create templates.") +model MessageTemplate { + @doc("Name of the template.") + name: string; + + @doc("The template's language, in the ISO 639 format, consist of a two-letter language code followed by an optional two-letter country code, e.g., 'en' or 'en_US'.") + language: string; + + @doc("The template values.") + values?: MessageTemplateValue[]; + + @doc("The binding object to link values to the template specific locations") + bindings?: MessageTemplateBindings; +} + +@discriminator("kind") +@doc("The class describes a parameter of a template.") +model MessageTemplateValue { + @doc("Template binding reference name") + @projectedName("java", "refValue") + name: string; + + @doc("The type discriminator describing a template parameter type.") + kind: MessageTemplateValueKind; +} + +@doc("The message template's text value information.") +model MessageTemplateText extends MessageTemplateValue { + @doc("Message parameter type is text.") + kind: MessageTemplateValueKind.text; + + @doc("The text value.") + text: string; +} + +@doc("The message template's media value information. Could be an image, document or video.") +model MessageTemplateMedia { + @projectedName("csharp", "uri") + @doc("The (public) URL of the media.") + url: url; + + @doc("The [optional] caption of the media object.") + caption?: string; + + @doc("The [optional] filename of the media file.") + fileName?: string; +} + +@doc("The message template's image value information.") +model MessageTemplateImage extends MessageTemplateValue { + @doc("Message parameter type is image.") + kind: MessageTemplateValueKind.image; + + ...MessageTemplateMedia; +} + +@doc("The message template's document value information.") +model MessageTemplateDocument extends MessageTemplateValue { + @doc("Message parameter type is document.") + kind: MessageTemplateValueKind.document; + + ...MessageTemplateMedia; +} + +@doc("The message template's video value information.") +model MessageTemplateVideo extends MessageTemplateValue { + @doc("Message parameter type is video.") + kind: MessageTemplateValueKind.video; + + ...MessageTemplateMedia; +} + +@doc("The message template's location value information.") +model MessageTemplateLocation extends MessageTemplateValue { + @doc("Message parameter type is location.") + kind: MessageTemplateValueKind.location; + + @doc("The [Optional] name of the location.") + locationName?: string; + + @doc("The [Optional] address of the location.") + address?: string; + + @doc("The latitude of the location.") + latitude: float64; + + @doc("The longitude of the location.") + longitude: float64; +} + +@doc("The message template's quick action value information.") +model MessageTemplateQuickAction extends MessageTemplateValue { + @doc("Message parameter type is quick action.") + kind: MessageTemplateValueKind.quickAction; + + @doc("The [Optional] quick action text") + text?: string; + + @doc("The [Optional] quick action payload") + payload?: string; +} + +@discriminator("kind") +@doc("The binding object to link values to the template specific locations") +model MessageTemplateBindings { + @doc("The type discriminator describing a template bindings type.") + kind: MessageTemplateBindingsKind; +} + +@doc("The template bindings for WhatsApp") +model WhatsAppMessageTemplateBindings extends MessageTemplateBindings { + @doc("MessageTemplateBindings is whatsApp") + kind: MessageTemplateBindingsKind.whatsApp; + + @doc("The header template bindings") + header?: WhatsAppMessageTemplateBindingsComponent[]; + + @doc("The body template bindings") + body?: WhatsAppMessageTemplateBindingsComponent[]; + + @doc("The footer template bindings") + footer?: WhatsAppMessageTemplateBindingsComponent[]; + + @doc("The button template bindings") + buttons?: WhatsAppMessageTemplateBindingsButton[]; +} + +@doc("The template bindings component for WhatsApp") +model WhatsAppMessageTemplateBindingsComponent { + @doc("The name of the referenced item in the template values.") + refValue: string; +} + +@doc("The template bindings component button for WhatsApp") +model WhatsAppMessageTemplateBindingsButton { + @doc("The WhatsApp button sub type") + subType: WhatsAppMessageButtonSubType; + + @doc("The name of the referenced item in the template values.") + refValue: string; +} + +@doc("Result of the send message operation.") +model SendMessageResult { + @doc("Receipts of the send message operation.") + receipts: MessageReceipt[]; +} + +@doc("Receipt of the sending one message.") +model MessageReceipt { + @doc("The message id.") + messageId: string; + + @doc("The native external platform user identifier of the recipient.") + to: string; +} + +@doc("The WhatsApp-specific template response contract") +model WhatsAppMessageTemplateItem extends MessageTemplateItem { + #suppress "@azure-tools/typespec-azure-core/no-unknown" "Payload being returned from WhatsApp with no guaranteed object type." + @doc("WhatsApp platform's template content. This is the payload returned from WhatsApp API.") + content?: unknown; + + @doc("Message template response type is whatsApp.") + kind: CommunicationMessagesChannel.whatsApp; +} + +@resource("messages/notifications") +@doc("A notification.") +model Notifications { + @key + @visibility("read") + @doc("The notification ID.") + id: string; +} + +@resource("messages/channels") +@doc("A communication channel.") +model CommunicationChannel { + @key + @visibility("read") + @doc("The registration ID of the channel.") + channelId: uuid; +} + +@resource("messages/streams") +@doc("A data stream.") +model MessageDataStream { + @key + @visibility("read") + @doc("The stream ID.") + @projectedName("java", "mediaId") + id: string; + + @body + @doc("The stream body.") + body: bytes; + + @header + @doc("The stream content type.") + contentType: "application/octet-stream"; +} + +@resource("templates") +@parentResource(CommunicationChannel) +@discriminator("kind") +@doc("The message template as returned from the service.") +model MessageTemplateItem { + @key + @visibility("read") + @doc("The template's name.") + name: string; + + @doc("The template's language, in the ISO 639 format, consist of a two-letter language code followed by an optional two-letter country code, e.g., 'en' or 'en_US'.") + language: string; + + @doc("The aggregated template status.") + status: MessageTemplateStatus; + + @doc("The type discriminator describing a template type.") + kind: CommunicationMessagesChannel; +} + +alias ListTemplatesQueryParams = ListQueryParametersTrait<{ + @doc("Number of objects to return per page.") + @query + maxpagesize?: int32; +}>; + +@doc("Azure Communication Messages Versions") +enum Versions { + @doc("Azure Communication Messages 2024-02-01 api version") + @useDependency(Azure.Core.Versions.v1_0_Preview_2) + c2024_02_01: "2024-02-01", +} diff --git a/specification/communication/Communication.Messages/routes.tsp b/specification/communication/Communication.Messages/routes.tsp new file mode 100644 index 0000000000000..def1bd4a3a645 --- /dev/null +++ b/specification/communication/Communication.Messages/routes.tsp @@ -0,0 +1,45 @@ +import "@typespec/rest"; +import "@typespec/http"; +import "@typespec/versioning"; +import "@azure-tools/typespec-azure-core"; +import "./models.tsp"; + +using TypeSpec.Http; +using TypeSpec.Rest; +using TypeSpec.Versioning; +using Azure.Core; +using Azure.Core.Traits; + +namespace Azure.Communication.MessagesService; + +alias ServiceTraits = SupportsRepeatableRequests & + NoConditionalRequests & + SupportsClientRequestId; + +alias Operations = Azure.Core.ResourceOperations; + +interface TemplateOperations { + @tag("Template") + @doc("List all templates for given Azure Communication Services channel") + @projectedName("csharp", "getTemplates") + listTemplates is Operations.ResourceList< + MessageTemplateItem, + ListTemplatesQueryParams + >; +} + +interface NotificationMessagesOperations { + @tag("Notifications") + @doc("Sends a notification message from Business to User.") + send is Operations.ResourceCollectionAction< + Notifications, + NotificationContent, + AcceptedResponse & SendMessageResult + >; +} + +interface StreamOperations { + @tag("Stream") + @doc("Download the Media payload from a User to Business message.") + getMedia is Operations.ResourceRead; +} diff --git a/specification/communication/Communication.Messages/tspconfig.yaml b/specification/communication/Communication.Messages/tspconfig.yaml new file mode 100644 index 0000000000000..8ecff70bb746f --- /dev/null +++ b/specification/communication/Communication.Messages/tspconfig.yaml @@ -0,0 +1,57 @@ +parameters: + "python-sdk-folder": + default: "{project-root}/azure-sdk-for-python/" + "java-sdk-folder": + default: "{project-root}/azure-sdk-for-java/" + "js-sdk-folder": + default: "{project-root}/azure-sdk-for-js/" + "csharp-sdk-folder": + default: "{project-root}/azure-sdk-for-net/" + "service-directory-name": + default: "communication" + "service-dir": + default: "sdk/communication" + "python-output-dir": + default: "azure/communication/messages/_generated" +emit: [ + "@azure-tools/typespec-autorest" +] + +linter: + extends: + - "@azure-tools/typespec-azure-core/all" + +options: + "@azure-tools/typespec-autorest": + azure-resource-provider-folder: "data-plane" + output-file: "{azure-resource-provider-folder}/Messages/{version-status}/{version}/communicationservicesmessages.json" + emitter-output-dir: "{project-root}/.." + omit-unreachable-types: true + examples-directory: "{project-root}/examples" + "@azure-tools/typespec-csharp": + clear-output-folder: true + model-namespace: false + emitter-output-dir: "{csharp-sdk-folder}/sdk/{service-directory-name}/{namespace}/src" + namespace: Azure.Communication.Messages + package-dir: "Azure.Communication.Messages" + save-inputs: true + "@azure-tools/typespec-python": + package-pprint-name: "\"Communication Messages\"" + emitter-output-dir: "{python-sdk-folder}/sdk/{service-directory-name}/{package-name}" + package-dir: "azure-communication-messages" + package-name: "{package-dir}" + package-version: 1.0.0 + "@azure-tools/typespec-java": + package-dir: "azure-communication-messages" + namespace: com.azure.communication.messages + partial-update: true + service-name: Messages + custom-types-subpackage: "models.channels" + custom-types: "WhatsAppMessageButtonSubType,WhatsAppMessageTemplateBindings,WhatsAppMessageTemplateBindingsButton,WhatsAppMessageTemplateBindingsComponent,WhatsAppMessageTemplateItem" + customization-class: customization/src/main/java/MessagesSdkCustomization.java + "@azure-tools/typespec-ts": + package-dir: "communication-messages-rest" + packageDetails: + name: "@azure-rest/communication-messages" + description: "Azure client library for Azure Communication Messages services" + version: "1.0.0-beta.2" \ No newline at end of file diff --git a/specification/communication/data-plane/Messages/readme.md b/specification/communication/data-plane/Messages/readme.md index e0b56043cbb6e..0471f958df570 100644 --- a/specification/communication/data-plane/Messages/readme.md +++ b/specification/communication/data-plane/Messages/readme.md @@ -26,7 +26,18 @@ These are the global settings for the communicationservices. ```yaml openapi-type: data-plane -tag: package-2023-08-24-preview +tag: package-2024-02-01 +``` + +### Tag: package-2024-02-01 + +These settings apply only when `--tag=package-2024-02-01` is specified on the command line. + +```yaml $(tag) == 'package-2024-02-01' +input-file: + - stable/2024-02-01/communicationservicesmessages.json +title: + Azure Communication Services ``` ### Tag: package-2023-08-24-preview @@ -40,13 +51,7 @@ title: Azure Communication Services ``` -# Code Generation - -## Swagger to SDK - -This section describes what SDK should be generated by the automatic system. -This is not used by Autorest itself. - -## CSharp - -See configuration in [readme.csharp.md](./readme.csharp.md) +``` yaml +suppressions: + - code: LroExtension +``` \ No newline at end of file diff --git a/specification/communication/data-plane/Messages/stable/2024-02-01/communicationservicesmessages.json b/specification/communication/data-plane/Messages/stable/2024-02-01/communicationservicesmessages.json new file mode 100644 index 0000000000000..741d2880efcd5 --- /dev/null +++ b/specification/communication/data-plane/Messages/stable/2024-02-01/communicationservicesmessages.json @@ -0,0 +1,1067 @@ +{ + "swagger": "2.0", + "info": { + "title": "CommunicationMessagesClient", + "version": "2024-02-01", + "description": "Azure Communication Messages Service", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "name": "endpoint", + "in": "path", + "description": "The communication resource, for example https://my-resource.communication.azure.com", + "required": true, + "type": "string", + "format": "uri", + "x-ms-skip-url-encoding": true + } + ] + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "AadOauth2Auth": [ + "https://communication.azure.com/.default" + ] + }, + { + "ApiKeyAuth": [] + } + ], + "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" + }, + "ApiKeyAuth": { + "type": "apiKey", + "name": "Authorization", + "in": "header" + } + }, + "tags": [ + { + "name": "Stream" + }, + { + "name": "Notifications" + }, + { + "name": "Template" + } + ], + "paths": { + "/messages/channels/{channelId}/templates": { + "get": { + "operationId": "TemplateOperations_ListTemplates", + "tags": [ + "Template" + ], + "description": "List all templates for given Azure Communication Services channel", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "channelId", + "in": "path", + "description": "The registration ID of the channel.", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "name": "maxpagesize", + "in": "query", + "description": "Number of objects to return per page.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/PagedMessageTemplateItem" + }, + "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": { + "Gets a list of templates": { + "$ref": "./examples/Template_ListTemplates.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/messages/notifications:send": { + "post": { + "operationId": "NotificationMessagesOperations_Send", + "tags": [ + "Notifications" + ], + "description": "Sends a notification message from Business to User.", + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "$ref": "#/parameters/Azure.Core.RepeatabilityRequestHeaders.repeatabilityRequestId" + }, + { + "$ref": "#/parameters/Azure.Core.RepeatabilityRequestHeaders.repeatabilityFirstSent" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + }, + { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NotificationContent" + } + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "schema": { + "$ref": "#/definitions/SendMessageResult" + }, + "headers": { + "Repeatability-Result": { + "type": "string", + "description": "Indicates whether the repeatable request was accepted or rejected.", + "enum": [ + "accepted", + "rejected" + ], + "x-ms-enum": { + "name": "RepeatabilityResult", + "modelAsString": false, + "values": [ + { + "name": "accepted", + "value": "accepted", + "description": "If the request was accepted and the server guarantees that the server state reflects a single execution of the operation." + }, + { + "name": "rejected", + "value": "rejected", + "description": "If the request was rejected because the combination of Repeatability-First-Sent and Repeatability-Request-ID were invalid\nor because the Repeatability-First-Sent value was outside the range of values held by the server." + } + ] + } + }, + "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": { + "Sends a notification message - Template": { + "$ref": "./examples/NotificationMessages_SendTemplate.json" + }, + "Sends a notification message - image": { + "$ref": "./examples/NotificationMessages_SendImage.json" + }, + "Sends a notification message - text": { + "$ref": "./examples/NotificationMessages_SendText.json" + } + } + } + }, + "/messages/streams/{id}": { + "get": { + "operationId": "StreamOperations_GetMedia", + "tags": [ + "Stream" + ], + "description": "Download the Media payload from a User to Business message.", + "produces": [ + "application/octet-stream", + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/Azure.Core.Foundations.ApiVersionParameter" + }, + { + "name": "id", + "in": "path", + "description": "The stream ID.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/Azure.Core.ClientRequestIdHeader" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "type": "file" + }, + "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": { + "Download media": { + "$ref": "./examples/Stream_GetMedia.json" + } + } + } + } + }, + "definitions": { + "Azure.Core.Foundations.Error": { + "type": "object", + "description": "The error object.", + "properties": { + "code": { + "type": "string", + "description": "One of a server-defined set of error codes." + }, + "message": { + "type": "string", + "description": "A human-readable representation of the error." + }, + "target": { + "type": "string", + "description": "The target of the error." + }, + "details": { + "type": "array", + "description": "An array of details about specific errors that led to this reported error.", + "items": { + "$ref": "#/definitions/Azure.Core.Foundations.Error" + }, + "x-ms-identifiers": [] + }, + "innererror": { + "$ref": "#/definitions/Azure.Core.Foundations.InnerError", + "description": "An object containing more specific information than the current object about the error." + } + }, + "required": [ + "code", + "message" + ] + }, + "Azure.Core.Foundations.ErrorResponse": { + "type": "object", + "description": "A response containing error details.", + "properties": { + "error": { + "$ref": "#/definitions/Azure.Core.Foundations.Error", + "description": "The error object." + } + }, + "required": [ + "error" + ] + }, + "Azure.Core.Foundations.InnerError": { + "type": "object", + "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.", + "properties": { + "code": { + "type": "string", + "description": "One of a server-defined set of error codes." + }, + "innererror": { + "$ref": "#/definitions/Azure.Core.Foundations.InnerError", + "description": "Inner error." + } + } + }, + "Azure.Core.uuid": { + "type": "string", + "format": "uuid", + "description": "Universally Unique Identifier" + }, + "CommunicationMessageKind": { + "type": "string", + "description": "The type of message. Supports text, image, template.", + "enum": [ + "text", + "image", + "template" + ], + "x-ms-enum": { + "name": "CommunicationMessageKind", + "modelAsString": true, + "values": [ + { + "name": "text", + "value": "text", + "description": "Text message type." + }, + { + "name": "image", + "value": "image", + "description": "Image message type." + }, + { + "name": "template", + "value": "template", + "description": "Template message type." + } + ] + } + }, + "CommunicationMessagesChannel": { + "type": "string", + "description": "The type of the communication messages channel.", + "enum": [ + "whatsApp" + ], + "x-ms-enum": { + "name": "CommunicationMessagesChannel", + "modelAsString": true, + "values": [ + { + "name": "whatsApp", + "value": "whatsApp", + "description": "The WhatsApp communication messages channel type." + } + ] + } + }, + "MediaNotificationContent": { + "type": "object", + "description": "A request to send a media notification.", + "properties": { + "content": { + "type": "string", + "description": "Optional text content." + }, + "mediaUri": { + "type": "string", + "format": "uri", + "description": "A media url for the file. Required if the type is one of the supported media types, e.g. image" + } + }, + "required": [ + "mediaUri" + ], + "allOf": [ + { + "$ref": "#/definitions/NotificationContent" + } + ], + "x-ms-discriminator-value": "image" + }, + "MessageReceipt": { + "type": "object", + "description": "Receipt of the sending one message.", + "properties": { + "messageId": { + "type": "string", + "description": "The message id." + }, + "to": { + "type": "string", + "description": "The native external platform user identifier of the recipient." + } + }, + "required": [ + "messageId", + "to" + ] + }, + "MessageTemplate": { + "type": "object", + "description": "The template object used to create templates.", + "properties": { + "name": { + "type": "string", + "description": "Name of the template." + }, + "language": { + "type": "string", + "description": "The template's language, in the ISO 639 format, consist of a two-letter language code followed by an optional two-letter country code, e.g., 'en' or 'en_US'." + }, + "values": { + "type": "array", + "description": "The template values.", + "items": { + "$ref": "#/definitions/MessageTemplateValue" + }, + "x-ms-identifiers": [] + }, + "bindings": { + "$ref": "#/definitions/MessageTemplateBindings", + "description": "The binding object to link values to the template specific locations" + } + }, + "required": [ + "name", + "language" + ] + }, + "MessageTemplateBindings": { + "type": "object", + "description": "The binding object to link values to the template specific locations", + "properties": { + "kind": { + "$ref": "#/definitions/MessageTemplateBindingsKind", + "description": "The type discriminator describing a template bindings type." + } + }, + "discriminator": "kind", + "required": [ + "kind" + ] + }, + "MessageTemplateBindingsKind": { + "type": "string", + "description": "The type of the message template.", + "enum": [ + "whatsApp" + ], + "x-ms-enum": { + "name": "MessageTemplateBindingsKind", + "modelAsString": true, + "values": [ + { + "name": "whatsApp", + "value": "whatsApp", + "description": "The WhatsApp template type." + } + ] + } + }, + "MessageTemplateDocument": { + "type": "object", + "description": "The message template's document value information.", + "properties": { + "url": { + "type": "string", + "format": "uri", + "description": "The (public) URL of the media." + }, + "caption": { + "type": "string", + "description": "The [optional] caption of the media object." + }, + "fileName": { + "type": "string", + "description": "The [optional] filename of the media file." + } + }, + "required": [ + "url" + ], + "allOf": [ + { + "$ref": "#/definitions/MessageTemplateValue" + } + ], + "x-ms-discriminator-value": "document" + }, + "MessageTemplateImage": { + "type": "object", + "description": "The message template's image value information.", + "properties": { + "url": { + "type": "string", + "format": "uri", + "description": "The (public) URL of the media." + }, + "caption": { + "type": "string", + "description": "The [optional] caption of the media object." + }, + "fileName": { + "type": "string", + "description": "The [optional] filename of the media file." + } + }, + "required": [ + "url" + ], + "allOf": [ + { + "$ref": "#/definitions/MessageTemplateValue" + } + ], + "x-ms-discriminator-value": "image" + }, + "MessageTemplateItem": { + "type": "object", + "description": "The message template as returned from the service.", + "properties": { + "name": { + "type": "string", + "description": "The template's name.", + "readOnly": true + }, + "language": { + "type": "string", + "description": "The template's language, in the ISO 639 format, consist of a two-letter language code followed by an optional two-letter country code, e.g., 'en' or 'en_US'." + }, + "status": { + "$ref": "#/definitions/MessageTemplateStatus", + "description": "The aggregated template status." + }, + "kind": { + "$ref": "#/definitions/CommunicationMessagesChannel", + "description": "The type discriminator describing a template type." + } + }, + "discriminator": "kind", + "required": [ + "name", + "language", + "status", + "kind" + ] + }, + "MessageTemplateLocation": { + "type": "object", + "description": "The message template's location value information.", + "properties": { + "locationName": { + "type": "string", + "description": "The [Optional] name of the location." + }, + "address": { + "type": "string", + "description": "The [Optional] address of the location." + }, + "latitude": { + "type": "number", + "format": "double", + "description": "The latitude of the location." + }, + "longitude": { + "type": "number", + "format": "double", + "description": "The longitude of the location." + } + }, + "required": [ + "latitude", + "longitude" + ], + "allOf": [ + { + "$ref": "#/definitions/MessageTemplateValue" + } + ], + "x-ms-discriminator-value": "location" + }, + "MessageTemplateQuickAction": { + "type": "object", + "description": "The message template's quick action value information.", + "properties": { + "text": { + "type": "string", + "description": "The [Optional] quick action text" + }, + "payload": { + "type": "string", + "description": "The [Optional] quick action payload" + } + }, + "allOf": [ + { + "$ref": "#/definitions/MessageTemplateValue" + } + ], + "x-ms-discriminator-value": "quickAction" + }, + "MessageTemplateStatus": { + "type": "string", + "description": "The aggregated template status.", + "enum": [ + "approved", + "rejected", + "pending", + "paused" + ], + "x-ms-enum": { + "name": "MessageTemplateStatus", + "modelAsString": true, + "values": [ + { + "name": "approved", + "value": "approved", + "description": "Message template is approved." + }, + { + "name": "rejected", + "value": "rejected", + "description": "Message template is rejected." + }, + { + "name": "pending", + "value": "pending", + "description": "Message template is pending." + }, + { + "name": "paused", + "value": "paused", + "description": "Message template is paused." + } + ] + } + }, + "MessageTemplateText": { + "type": "object", + "description": "The message template's text value information.", + "properties": { + "text": { + "type": "string", + "description": "The text value." + } + }, + "required": [ + "text" + ], + "allOf": [ + { + "$ref": "#/definitions/MessageTemplateValue" + } + ], + "x-ms-discriminator-value": "text" + }, + "MessageTemplateValue": { + "type": "object", + "description": "The class describes a parameter of a template.", + "properties": { + "name": { + "type": "string", + "description": "Template binding reference name" + }, + "kind": { + "$ref": "#/definitions/MessageTemplateValueKind", + "description": "The type discriminator describing a template parameter type." + } + }, + "discriminator": "kind", + "required": [ + "name", + "kind" + ] + }, + "MessageTemplateValueKind": { + "type": "string", + "description": "The type of the template parameter.", + "enum": [ + "text", + "image", + "document", + "video", + "location", + "quickAction" + ], + "x-ms-enum": { + "name": "MessageTemplateValueKind", + "modelAsString": true, + "values": [ + { + "name": "text", + "value": "text", + "description": "The text template parameter type." + }, + { + "name": "image", + "value": "image", + "description": "The image template parameter type." + }, + { + "name": "document", + "value": "document", + "description": "The document template parameter type." + }, + { + "name": "video", + "value": "video", + "description": "The video template parameter type." + }, + { + "name": "location", + "value": "location", + "description": "The location template parameter type." + }, + { + "name": "quickAction", + "value": "quickAction", + "description": "The quick action template parameter type." + } + ] + } + }, + "MessageTemplateVideo": { + "type": "object", + "description": "The message template's video value information.", + "properties": { + "url": { + "type": "string", + "format": "uri", + "description": "The (public) URL of the media." + }, + "caption": { + "type": "string", + "description": "The [optional] caption of the media object." + }, + "fileName": { + "type": "string", + "description": "The [optional] filename of the media file." + } + }, + "required": [ + "url" + ], + "allOf": [ + { + "$ref": "#/definitions/MessageTemplateValue" + } + ], + "x-ms-discriminator-value": "video" + }, + "NotificationContent": { + "type": "object", + "description": "Details of the message to send.", + "properties": { + "channelRegistrationId": { + "$ref": "#/definitions/Azure.Core.uuid", + "description": "The Channel Registration ID for the Business Identifier." + }, + "to": { + "type": "array", + "description": "The native external platform user identifiers of the recipient.", + "items": { + "type": "string" + } + }, + "kind": { + "$ref": "#/definitions/CommunicationMessageKind", + "description": "The type discriminator describing a notification type." + } + }, + "discriminator": "kind", + "required": [ + "channelRegistrationId", + "to", + "kind" + ] + }, + "PagedMessageTemplateItem": { + "type": "object", + "description": "Paged collection of MessageTemplateItem items", + "properties": { + "value": { + "type": "array", + "description": "The MessageTemplateItem items on this page", + "items": { + "$ref": "#/definitions/MessageTemplateItem" + }, + "x-ms-identifiers": [] + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "SendMessageResult": { + "type": "object", + "description": "Result of the send message operation.", + "properties": { + "receipts": { + "type": "array", + "description": "Receipts of the send message operation.", + "items": { + "$ref": "#/definitions/MessageReceipt" + }, + "x-ms-identifiers": [] + } + }, + "required": [ + "receipts" + ] + }, + "TemplateNotificationContent": { + "type": "object", + "description": "A request to send a template notification.", + "properties": { + "template": { + "$ref": "#/definitions/MessageTemplate", + "description": "The template object used to create templates." + } + }, + "required": [ + "template" + ], + "allOf": [ + { + "$ref": "#/definitions/NotificationContent" + } + ], + "x-ms-discriminator-value": "template" + }, + "TextNotificationContent": { + "type": "object", + "description": "A request to send a text notification.", + "properties": { + "content": { + "type": "string", + "description": "Message content." + } + }, + "required": [ + "content" + ], + "allOf": [ + { + "$ref": "#/definitions/NotificationContent" + } + ], + "x-ms-discriminator-value": "text" + }, + "WhatsAppMessageButtonSubType": { + "type": "string", + "description": "The WhatsApp button sub type.", + "enum": [ + "quickReply", + "url" + ], + "x-ms-enum": { + "name": "WhatsAppMessageButtonSubType", + "modelAsString": true, + "values": [ + { + "name": "quickReply", + "value": "quickReply", + "description": "The WhatsApp button sub type is quick reply." + }, + { + "name": "url", + "value": "url", + "description": "The WhatsApp button sub type is url." + } + ] + } + }, + "WhatsAppMessageTemplateBindings": { + "type": "object", + "description": "The template bindings for WhatsApp", + "properties": { + "header": { + "type": "array", + "description": "The header template bindings", + "items": { + "$ref": "#/definitions/WhatsAppMessageTemplateBindingsComponent" + }, + "x-ms-identifiers": [] + }, + "body": { + "type": "array", + "description": "The body template bindings", + "items": { + "$ref": "#/definitions/WhatsAppMessageTemplateBindingsComponent" + }, + "x-ms-identifiers": [] + }, + "footer": { + "type": "array", + "description": "The footer template bindings", + "items": { + "$ref": "#/definitions/WhatsAppMessageTemplateBindingsComponent" + }, + "x-ms-identifiers": [] + }, + "buttons": { + "type": "array", + "description": "The button template bindings", + "items": { + "$ref": "#/definitions/WhatsAppMessageTemplateBindingsButton" + }, + "x-ms-identifiers": [] + } + }, + "allOf": [ + { + "$ref": "#/definitions/MessageTemplateBindings" + } + ], + "x-ms-discriminator-value": "whatsApp" + }, + "WhatsAppMessageTemplateBindingsButton": { + "type": "object", + "description": "The template bindings component button for WhatsApp", + "properties": { + "subType": { + "$ref": "#/definitions/WhatsAppMessageButtonSubType", + "description": "The WhatsApp button sub type" + }, + "refValue": { + "type": "string", + "description": "The name of the referenced item in the template values." + } + }, + "required": [ + "subType", + "refValue" + ] + }, + "WhatsAppMessageTemplateBindingsComponent": { + "type": "object", + "description": "The template bindings component for WhatsApp", + "properties": { + "refValue": { + "type": "string", + "description": "The name of the referenced item in the template values." + } + }, + "required": [ + "refValue" + ] + }, + "WhatsAppMessageTemplateItem": { + "type": "object", + "description": "The WhatsApp-specific template response contract", + "properties": { + "content": { + "description": "WhatsApp platform's template content. This is the payload returned from WhatsApp API." + } + }, + "allOf": [ + { + "$ref": "#/definitions/MessageTemplateItem" + } + ], + "x-ms-discriminator-value": "whatsApp" + } + }, + "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" + }, + "Azure.Core.RepeatabilityRequestHeaders.repeatabilityFirstSent": { + "name": "Repeatability-First-Sent", + "in": "header", + "description": "Specifies the date and time at which the request was first created.", + "required": false, + "type": "string", + "format": "date-time", + "x-ms-parameter-location": "method", + "x-ms-client-name": "repeatabilityFirstSent" + }, + "Azure.Core.RepeatabilityRequestHeaders.repeatabilityRequestId": { + "name": "Repeatability-Request-ID", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "x-ms-client-name": "repeatabilityRequestId" + } + } +} diff --git a/specification/communication/data-plane/Messages/stable/2024-02-01/examples/NotificationMessages_SendImage.json b/specification/communication/data-plane/Messages/stable/2024-02-01/examples/NotificationMessages_SendImage.json new file mode 100644 index 0000000000000..faf6637ec2ba1 --- /dev/null +++ b/specification/communication/data-plane/Messages/stable/2024-02-01/examples/NotificationMessages_SendImage.json @@ -0,0 +1,30 @@ +{ + "title": "Sends a notification message - image", + "operationId": "NotificationMessagesOperations_Send", + "parameters": { + "api-version": "2024-02-01", + "content-type": "application/json", + "body": { + "channelRegistrationId": "0f0eb78e-a576-1dfc-b414-0f0756de3338", + "to": [ + "14250000000" + ], + "kind": "image", + "mediaUri": "https://example.com/image.jpg", + "content": "check out this image!" + }, + "endpoint": "https://my-resource.communication.azure.com" + }, + "responses": { + "202": { + "body": { + "receipts": [ + { + "messageId": "320fc2a1-4c4b-4387-9c1a-bd38b57795de", + "to": "14250000000" + } + ] + } + } + } +} diff --git a/specification/communication/data-plane/Messages/stable/2024-02-01/examples/NotificationMessages_SendTemplate.json b/specification/communication/data-plane/Messages/stable/2024-02-01/examples/NotificationMessages_SendTemplate.json new file mode 100644 index 0000000000000..60a43d372ac1a --- /dev/null +++ b/specification/communication/data-plane/Messages/stable/2024-02-01/examples/NotificationMessages_SendTemplate.json @@ -0,0 +1,55 @@ +{ + "title": "Sends a notification message - Template", + "operationId": "NotificationMessagesOperations_Send", + "parameters": { + "api-version": "2024-02-01", + "content-type": "application/json", + "body": { + "channelRegistrationId": "0f0eb78e-a576-1dfc-b414-0f0756de3338", + "to": [ + "14250000000" + ], + "kind": "template", + "template": { + "name": "example", + "language": "en", + "values": [ + { + "name": "userName", + "kind": "text", + "text": "John Doe" + }, + { + "name": "orderNumber", + "kind": "text", + "text": "12345" + } + ], + "bindings": { + "body": [ + { + "refValue": "userName" + }, + { + "refValue": "orderNumber" + } + ], + "kind": "whatsApp" + } + } + }, + "endpoint": "https://my-resource.communication.azure.com" + }, + "responses": { + "202": { + "body": { + "receipts": [ + { + "messageId": "320fc2a1-4c4b-4387-9c1a-bd38b57795de", + "to": "14250000000" + } + ] + } + } + } +} diff --git a/specification/communication/data-plane/Messages/stable/2024-02-01/examples/NotificationMessages_SendText.json b/specification/communication/data-plane/Messages/stable/2024-02-01/examples/NotificationMessages_SendText.json new file mode 100644 index 0000000000000..60c7fb4c0ce59 --- /dev/null +++ b/specification/communication/data-plane/Messages/stable/2024-02-01/examples/NotificationMessages_SendText.json @@ -0,0 +1,29 @@ +{ + "title": "Sends a notification message - text", + "operationId": "NotificationMessagesOperations_Send", + "parameters": { + "api-version": "2024-02-01", + "content-type": "application/json", + "body": { + "channelRegistrationId": "0f0eb78e-a576-1dfc-b414-0f0756de3338", + "to": [ + "14250000000" + ], + "kind": "text", + "content": "Text message through CPM" + }, + "endpoint": "https://my-resource.communication.azure.com" + }, + "responses": { + "202": { + "body": { + "receipts": [ + { + "messageId": "320fc2a1-4c4b-4387-9c1a-bd38b57795de", + "to": "14250000000" + } + ] + } + } + } +} diff --git a/specification/communication/data-plane/Messages/stable/2024-02-01/examples/Stream_GetMedia.json b/specification/communication/data-plane/Messages/stable/2024-02-01/examples/Stream_GetMedia.json new file mode 100644 index 0000000000000..c1a94465afd96 --- /dev/null +++ b/specification/communication/data-plane/Messages/stable/2024-02-01/examples/Stream_GetMedia.json @@ -0,0 +1,15 @@ +{ + "title": "Download media", + "operationId": "StreamOperations_GetMedia", + "parameters": { + "api-version": "2024-02-01", + "content-type": "application/json", + "id": "d19e68ec-bdd6-4a50-8dfb-cbb1642df6ab", + "endpoint": "https://my-resource.communication.azure.com" + }, + "responses": { + "200": { + "body": "" + } + } +} diff --git a/specification/communication/data-plane/Messages/stable/2024-02-01/examples/Template_ListTemplates.json b/specification/communication/data-plane/Messages/stable/2024-02-01/examples/Template_ListTemplates.json new file mode 100644 index 0000000000000..b4619af170699 --- /dev/null +++ b/specification/communication/data-plane/Messages/stable/2024-02-01/examples/Template_ListTemplates.json @@ -0,0 +1,35 @@ +{ + "title": "Gets a list of templates", + "operationId": "TemplateOperations_ListTemplates", + "parameters": { + "api-version": "2024-02-01", + "content-type": "application/json", + "channelId": "0f0eb78e-a576-1dfc-b414-0f0756de3338", + "endpoint": "https://my-resource.communication.azure.com" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "sample_shipping_confirmation", + "language": "en_US", + "status": "approved", + "kind": "whatsApp", + "content": [ + { + "type": "BODY", + "text": "Your package has been shipped. It will be delivered in {{1}} business days." + }, + { + "type": "FOOTER", + "text": "This message is from an unverified business." + } + ] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2024-02-15-preview/privateEndpointConnection.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2024-02-15-preview/privateEndpointConnection.json index 6d744b72a42d5..c0989e6624bb0 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2024-02-15-preview/privateEndpointConnection.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2024-02-15-preview/privateEndpointConnection.json @@ -238,7 +238,7 @@ }, "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" } ] }, diff --git a/specification/edgemarketplace/resource-manager/readme.typescript.md b/specification/edgemarketplace/resource-manager/readme.typescript.md index 3149f1ecff398..0d5914d56a228 100644 --- a/specification/edgemarketplace/resource-manager/readme.typescript.md +++ b/specification/edgemarketplace/resource-manager/readme.typescript.md @@ -6,8 +6,8 @@ Please also specify `--typescript-sdks-folder=; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.AVS.ScriptExecutionCancelled event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AvsScriptExecutionCancelledEventData + extends AvsScriptExecutionEventData {} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.AVS.ScriptExecutionFailed event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AvsScriptExecutionFailedEventData extends AvsScriptExecutionEventData { + /** Failure reason of an event. */ + failureMessage?: string; +} + +/** Schema of the Data property of an EventGridEvent for Microsoft.AVS/privateClouds events. */ +model AvsPrivateCloudEventData { + /** Id of the operation that caused this event. */ + operationId?: string; +} + +/** Schema of the Data property of an EventGridEvent for Microsoft.AVS/clusters events. */ +model AvsClusterEventData { + /** Id of the operation that caused this event. */ + operationId?: string; + + /** Hosts added to the cluster in this event, if any. */ + addedHostNames?: string[]; + + /** Hosts removed from the cluster in this event, if any. */ + removedHostNames?: string[]; + + /** Hosts in Maintenance mode in the cluster, if any. */ + inMaintenanceHostNames?: string[]; +} + +/** Schema of the Data property of an EventGridEvent for Microsoft.AVS/scriptExecutions events. */ +model AvsScriptExecutionEventData { + /** Id of the operation that caused this event. */ + operationId?: string; + + /** Cmdlet referenced in the execution that caused this event. */ + cmdletId?: string; + + /** Stdout outputs from the execution, if any. */ + output?: string[]; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ApiManagement.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ApiManagement.tsp new file mode 100644 index 0000000000000..666507e4f1849 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ApiManagement.tsp @@ -0,0 +1,156 @@ +/** Describes the schema of the Azure API Management events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents; +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.UserCreated event. */ +model ApiManagementUserCreatedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.UserUpdated event. */ +model ApiManagementUserUpdatedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.UserDeleted event. */ +model ApiManagementUserDeletedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.SubscriptionCreated event. */ +model ApiManagementSubscriptionCreatedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.SubscriptionUpdated event. */ +model ApiManagementSubscriptionUpdatedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.SubscriptionDeleted event. */ +model ApiManagementSubscriptionDeletedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.ProductCreated event. */ +model ApiManagementProductCreatedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.ProductUpdated event. */ +model ApiManagementProductUpdatedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.ProductDeleted event. */ +model ApiManagementProductDeletedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.APICreated event. */ +model ApiManagementApiCreatedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.APIUpdated event. */ +model ApiManagementApiUpdatedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.APIDeleted event. */ +model ApiManagementApiDeletedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.APIReleaseCreated event. */ +model ApiManagementApiReleaseCreatedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.APIReleaseUpdated event. */ +model ApiManagementApiReleaseUpdatedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.APIReleaseDeleted event. */ +model ApiManagementApiReleaseDeletedEventData { + ...ApiManagementBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayCreated event. */ +model ApiManagementGatewayCreatedEventData { + ...ApiGatewayBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayUpdated event. */ +model ApiManagementGatewayUpdatedEventData { + ...ApiGatewayBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayDeleted event. */ +model ApiManagementGatewayDeletedEventData { + ...ApiGatewayBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayHostnameConfigurationCreated event. */ +model ApiManagementGatewayHostnameConfigurationCreatedEventData { + ...ApiGatewayHostnameBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayHostnameConfigurationUpdated event. */ +model ApiManagementGatewayHostnameConfigurationUpdatedEventData { + ...ApiGatewayHostnameBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayHostnameConfigurationDeleted event. */ +model ApiManagementGatewayHostnameConfigurationDeletedEventData { + ...ApiGatewayHostnameBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayCertificateAuthorityCreated event. */ +model ApiManagementGatewayCertificateAuthorityCreatedEventData { + ...ApiGatewayCertificateBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayCertificateAuthorityUpdated event. */ +model ApiManagementGatewayCertificateAuthorityUpdatedEventData { + ...ApiGatewayCertificateBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayCertificateAuthorityDeleted event. */ +model ApiManagementGatewayCertificateAuthorityDeletedEventData { + ...ApiGatewayCertificateBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayAPIAdded event. */ +model ApiManagementGatewayApiAddedEventData { + ...ApiGatewayApiBase; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayAPIRemoved event. */ +model ApiManagementGatewayApiRemovedEventData { + ...ApiGatewayApiBase; +} + +alias ApiManagementBase = { + /** The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///` */ + resourceUri?: string; +}; + +alias ApiGatewayBase = { + /** The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways/` */ + resourceUri?: string; +}; + +alias ApiGatewayHostnameBase = { + /** The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways//hostnameConfigurations/` */ + resourceUri?: string; +}; + +alias ApiGatewayCertificateBase = { + /** The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways//certificateAuthorities/` */ + resourceUri?: string; +}; + +alias ApiGatewayApiBase = { + /** The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways//apis/` */ + resourceUri?: string; +}; diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/AppConfiguration.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/AppConfiguration.tsp new file mode 100644 index 0000000000000..b0eb4b6da095f --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/AppConfiguration.tsp @@ -0,0 +1,54 @@ +/** Describes the schema of the Azure App Configuration events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents; +// need to figure out an alternative to this method --- should we pass in docstring here or should we just copy/paste and see what happens +/** Schema of the Data property of an EventGridEvent for a Microsoft.AppConfiguration.KeyValueModified event. */ +model AppConfigurationKeyValueModifiedEventData { + /** The key used to identify the key-value that was modified. */ + key?: string; + + /** The label, if any, used to identify the key-value that was modified. */ + label?: string; + + /** The etag representing the new state of the key-value. */ + etag?: string; + + /** The sync token representing the server state after the event. */ + syncToken?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.AppConfiguration.KeyValueDeleted event. */ +model AppConfigurationKeyValueDeletedEventData { + /** The key used to identify the key-value that was deleted. */ + key?: string; + + /** The label, if any, used to identify the key-value that was deleted. */ + label?: string; + + /** The etag representing the key-value that was deleted. */ + etag?: string; + + /** The sync token representing the server state after the event. */ + syncToken?: string; +} + +/** Schema of common properties of snapshot events */ +model AppConfigurationSnapshotEventData { + /** The name of the snapshot. */ + name?: string; + + /** The etag representing the new state of the snapshot. */ + etag?: string; + + /** The sync token representing the server state after the event. */ + syncToken?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.AppConfiguration.SnapshotCreated event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AppConfigurationSnapshotCreatedEventData + extends AppConfigurationSnapshotEventData {} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.AppConfiguration.SnapshotModified event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AppConfigurationSnapshotModifiedEventData + extends AppConfigurationSnapshotEventData {} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/AzureCommunicationServices.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/AzureCommunicationServices.tsp new file mode 100644 index 0000000000000..a92fe86b11f75 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/AzureCommunicationServices.tsp @@ -0,0 +1,1085 @@ +/** Describes the schema of the Azure Communication Services events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents; + +/** Schema of the Data property of an EventGridEvent for an Microsoft.Communication.IncomingCall event */ +model AcsIncomingCallEventData { + /** The communication identifier of the target user. */ + to?: CommunicationIdentifierModel; + + /** The communication identifier of the user who initiated the call. */ + from?: CommunicationIdentifierModel; + + /** The Id of the server call */ + serverCallId?: string; + + /** Display name of caller. */ + callerDisplayName?: string; + + /** Custom Context of Incoming Call */ + customContext?: AcsIncomingCallCustomContext; + + /** Signed incoming call context. */ + incomingCallContext?: string; + + /** CorrelationId (CallId). */ + correlationId?: string; +} + +/** Schema of the Data property of an EventGridEvent for an Microsoft.Communication.UserDisconnected event. */ +model AcsUserDisconnectedEventData { + /** The communication identifier of the user who was disconnected */ + userCommunicationIdentifier?: CommunicationIdentifierModel; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageReceived event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatMessageReceivedEventData + extends AcsChatMessageEventBaseProperties { + ...AcsChatMessageBaseEventData; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageReceivedInThread event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatMessageReceivedInThreadEventData + extends AcsChatMessageEventInThreadBaseProperties { + ...AcsChatMessageBaseEventData; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageEdited event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatMessageEditedEventData extends AcsChatMessageEventBaseProperties { + ...AcsChatMessageBaseEventData; + + /** The time at which the message was edited */ + editTime?: utcDateTime; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageEditedInThread event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatMessageEditedInThreadEventData + extends AcsChatMessageEventInThreadBaseProperties { + ...AcsChatMessageBaseEventData; + + /** The time at which the message was edited */ + editTime?: utcDateTime; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageDeleted event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatMessageDeletedEventData extends AcsChatMessageEventBaseProperties { + /** The time at which the message was deleted */ + deleteTime?: utcDateTime; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageDeletedInThread event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatMessageDeletedInThreadEventData + extends AcsChatMessageEventInThreadBaseProperties { + /** The time at which the message was deleted */ + deleteTime?: utcDateTime; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadCreatedWithUser event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatThreadCreatedWithUserEventData + extends AcsChatThreadEventBaseProperties { + ...AcsChatThreadBaseEventData; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadCreated event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatThreadCreatedEventData + extends AcsChatThreadEventInThreadBaseProperties { + ...AcsChatThreadBaseEventData; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadWithUserDeleted event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatThreadWithUserDeletedEventData + extends AcsChatThreadEventBaseProperties { + ...AcsChatThreadDeletedBaseEventData; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadDeleted event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatThreadDeletedEventData + extends AcsChatThreadEventInThreadBaseProperties { + ...AcsChatThreadDeletedBaseEventData; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadPropertiesUpdatedPerUser event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatThreadPropertiesUpdatedPerUserEventData + extends AcsChatThreadEventBaseProperties { + /** The communication identifier of the user who updated the thread properties */ + editedByCommunicationIdentifier?: CommunicationIdentifierModel; + + /** The time at which the properties of the thread were updated */ + editTime?: utcDateTime; + + /** The thread metadata */ + metadata?: Record; + + /** The updated thread properties */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "The type of properties is object with additionalProperties: object" + properties?: Record; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadPropertiesUpdated event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatThreadPropertiesUpdatedEventData + extends AcsChatThreadEventInThreadBaseProperties { + ...AcsChatThreadPropertiesBaseEventData; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatParticipantAddedToThreadWithUser event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatParticipantAddedToThreadWithUserEventData + extends AcsChatThreadEventBaseProperties { + ...AcsChatParticipantBaseEventData; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatParticipantRemovedFromThreadWithUser event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatParticipantRemovedFromThreadWithUserEventData + extends AcsChatThreadEventBaseProperties { + /** The time at which the user was removed to the thread */ + time?: utcDateTime; + + /** The communication identifier of the user who removed the user */ + removedByCommunicationIdentifier?: CommunicationIdentifierModel; + + /** The details of the user who was removed */ + participantRemoved?: AcsChatThreadParticipantProperties; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadParticipantAdded event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatParticipantAddedToThreadEventData + extends AcsChatEventInThreadBaseProperties { + ...AcsChatParticipantBaseEventData; + + /** The version of the thread */ + version?: int64; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadParticipantRemoved event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatParticipantRemovedFromThreadEventData + extends AcsChatEventInThreadBaseProperties { + /** The time at which the user was removed to the thread */ + time?: utcDateTime; + + /** The communication identifier of the user who removed the user */ + removedByCommunicationIdentifier?: CommunicationIdentifierModel; + + /** The details of the user who was removed */ + participantRemoved?: AcsChatThreadParticipantProperties; + + /** The version of the thread */ + version?: int64; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.SMSDeliveryReportReceived event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsSmsDeliveryReportReceivedEventData extends AcsSmsEventBaseProperties { + /** Status of Delivery */ + deliveryStatus?: string; + + /** Details about Delivery Status */ + deliveryStatusDetails?: string; + + /** List of details of delivery attempts made */ + deliveryAttempts?: AcsSmsDeliveryAttemptProperties[]; + + /** The time at which the SMS delivery report was received */ + receivedTimestamp?: utcDateTime; + + /** Customer Content */ + tag?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.SMSReceived event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsSmsReceivedEventData extends AcsSmsEventBaseProperties { + /** The SMS content */ + message?: string; + + /** The time at which the SMS was received */ + receivedTimestamp?: utcDateTime; +} + +//TODO: This might need some fixing +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RecordingFileStatusUpdated event. */ +model AcsRecordingFileStatusUpdatedEventData { + /** The details of recording storage information */ + recordingStorageInfo?: AcsRecordingStorageInfoProperties; + + /** The time at which the recording started */ + recordingStartTime?: utcDateTime; + + /** The recording duration in milliseconds */ + recordingDurationMs?: int64; + + /** The recording content type- AudioVideo, or Audio */ + recordingContentType?: recordingContentType; + + /** The recording channel type - Mixed, Unmixed */ + recordingChannelType?: recordingChannelType; + + /** The recording format type - Mp4, Mp3, Wav */ + recordingFormatType?: recordingFormatType; + + /** The reason for ending recording session */ + sessionEndReason?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.EmailDeliveryReportReceived event. */ +model AcsEmailDeliveryReportReceivedEventData { + /** The Sender Email Address */ + sender?: string; + + /** The recipient Email Address */ + recipient?: string; + + /** The Id of the email been sent */ + messageId?: string; + + /** The status of the email. Any value other than Delivered is considered failed. */ + status?: AcsEmailDeliveryReportStatus; + + /** Detailed information about the status if any */ + deliveryStatusDetails?: AcsEmailDeliveryReportStatusDetails; + + /** The time at which the email delivery report received timestamp */ + deliveryAttemptTimeStamp?: utcDateTime; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.EmailEngagementTrackingReportReceived event. */ +model AcsEmailEngagementTrackingReportReceivedEventData { + /** The Sender Email Address */ + sender?: string; + + /** The Recipient Email Address */ + recipient?: string; + + /** The Id of the email that has been sent */ + messageId?: string; + + /** The time at which the user interacted with the email */ + userActionTimeStamp?: utcDateTime; + + /** The context of the type of engagement user had with email */ + engagementContext?: string; + + /** The user agent interacting with the email */ + userAgent?: string; + + /** The type of engagement user have with email */ + engagementType?: AcsUserEngagement; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobCancelled event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterJobCancelledEventData extends AcsRouterJobEventData { + /** Router Job Note */ + note?: string; + + /** Router Job Disposition Code */ + dispositionCode?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobClassificationFailed event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterJobClassificationFailedEventData extends AcsRouterJobEventData { + /** Router Job Classification Policy Id */ + classificationPolicyId?: string; + + /** Router Job Classification Failed Errors */ + errors?: AcsRouterCommunicationError[]; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobClassified event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterJobClassifiedEventData extends AcsRouterJobEventData { + /** Router Job Queue Info */ + queueDetails?: AcsRouterQueueDetails; + + /** Router Job Classification Policy Id */ + classificationPolicyId?: string; + + /** Router Job Priority */ + priority?: int32; + + /** Router Job Attached Worker Selector */ + attachedWorkerSelectors?: AcsRouterWorkerSelector[]; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobClosed event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterJobClosedEventData extends AcsRouterJobEventData { + /** Router Job Closed Assignment Id */ + assignmentId?: string; + + /** Router Job Closed Worker Id */ + workerId?: string; + + /** Router Job Closed Disposition Code */ + dispositionCode?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobCompleted event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterJobCompletedEventData extends AcsRouterJobEventData { + /** Router Job Completed Assignment Id */ + assignmentId?: string; + + /** Router Job Completed Worker Id */ + workerId?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobDeleted event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterJobDeletedEventData extends AcsRouterJobEventData {} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobExceptionTriggered event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterJobExceptionTriggeredEventData extends AcsRouterJobEventData { + /** Router Job Exception Triggered Rule Key */ + ruleKey?: string; + + /** Router Job Exception Triggered Rule Id */ + exceptionRuleId?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobQueued event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterJobQueuedEventData extends AcsRouterJobEventData { + /** Router Job Priority */ + priority?: int32; + + /** Router Job Queued Attached Worker Selector */ + attachedWorkerSelectors?: AcsRouterWorkerSelector[]; + + /** Router Job Queued Requested Worker Selector */ + requestedWorkerSelectors?: AcsRouterWorkerSelector[]; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobReceived event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterJobReceivedEventData extends AcsRouterJobEventData { + /** Router Job Received Job Status */ + jobStatus?: AcsRouterJobStatus; + + /** Router Job Classification Policy Id */ + classificationPolicyId?: string; + + /** Router Job Priority */ + priority?: int32; + + /** Router Job Received Requested Worker Selectors */ + requestedWorkerSelectors?: AcsRouterWorkerSelector[]; + + /** Router Job Received Scheduled Time in UTC */ + scheduledOn?: utcDateTime; + + /** Unavailable For Matching for Router Job Received */ + unavailableForMatching: boolean; +} + +/** Acs Router Job Status */ +union AcsRouterJobStatus { + /** Router Job Status Pending Classification */ + "PendingClassification", + + /** Router Job Status Queued */ + "Queued", + + /** Router Job Status Assigned */ + "Assigned", + + /** Router Job Status Completed */ + "Completed", + + /** Router Job Status Closed */ + "Closed", + + /** Router Job Status Cancelled */ + "Cancelled", + + /** Router Job Status Classification Failed */ + "ClassificationFailed", + + /** Router Job Status Created */ + "Created", + + /** Router Job Status Pending Schedule */ + "PendingSchedule", + + /** Router Job Status Scheduled */ + "Scheduled", + + /** Router Job Status Schedule Failed */ + "ScheduleFailed", + + /** Router Job Status Waiting For Activation */ + "WaitingForActivation", + + string, +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobSchedulingFailed event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterJobSchedulingFailedEventData extends AcsRouterJobEventData { + /** Router Job Priority */ + priority?: int32; + + /** Router Job Scheduling Failed Attached Worker Selector Expired */ + expiredAttachedWorkerSelectors?: AcsRouterWorkerSelector[]; + + /** Router Job Scheduling Failed Requested Worker Selector Expired */ + expiredRequestedWorkerSelectors?: AcsRouterWorkerSelector[]; + + /** Router Job Scheduling Failed Scheduled Time in UTC */ + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + scheduledOn?: utcDateTime; + + /** Router Job Scheduling Failed Reason */ + failureReason?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobUnassigned event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterJobUnassignedEventData extends AcsRouterJobEventData { + /** Router Job Unassigned Assignment Id */ + assignmentId?: string; + + /** Router Job Unassigned Worker Id */ + workerId?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobWaitingForActivation event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterJobWaitingForActivationEventData extends AcsRouterJobEventData { + /** Router Job Waiting For Activation Priority */ + priority?: int32; + + /** Router Job Waiting For Activation Worker Selector Expired */ + expiredAttachedWorkerSelectors?: AcsRouterWorkerSelector[]; + + /** Router Job Waiting For Activation Requested Worker Selector Expired */ + expiredRequestedWorkerSelectors?: AcsRouterWorkerSelector[]; + + /** Router Job Waiting For Activation Scheduled Time in UTC */ + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + scheduledOn?: utcDateTime; + + /** Router Job Waiting For Activation Unavailable For Matching */ + unavailableForMatching: boolean; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobWorkerSelectorsExpired event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterJobWorkerSelectorsExpiredEventData + extends AcsRouterJobEventData { + /** Router Job Worker Selectors Expired Requested Worker Selectors */ + expiredRequestedWorkerSelectors?: AcsRouterWorkerSelector[]; + + /** Router Job Worker Selectors Expired Attached Worker Selectors */ + expiredAttachedWorkerSelectors?: AcsRouterWorkerSelector[]; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerDeleted event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterWorkerDeletedEventData extends AcsRouterWorkerEventData {} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerDeregistered event */ +model AcsRouterWorkerDeregisteredEventData { + /** Router Worker Deregistered Worker Id */ + workerId?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerOfferAccepted event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterWorkerOfferAcceptedEventData extends AcsRouterWorkerEventData { + /** Router Worker Offer Accepted Queue Id */ + queueId?: string; + + /** Router Worker Offer Accepted Offer Id */ + offerId?: string; + + /** Router Worker Offer Accepted Assignment Id */ + assignmentId?: string; + + /** Router Worker Offer Accepted Job Priority */ + jobPriority?: int32; + + /** Router Worker Offer Accepted Worker Labels */ + workerLabels?: Record; + + /** Router Worker Offer Accepted Worker Tags */ + workerTags?: Record; + + /** Router Worker Offer Accepted Job Labels */ + jobLabels?: Record; + + /** Router Worker Offer Accepted Job Tags */ + jobTags?: Record; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerOfferDeclined event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterWorkerOfferDeclinedEventData extends AcsRouterWorkerEventData { + /** Router Worker Offer Declined Queue Id */ + queueId?: string; + + /** Router Worker Offer Declined Offer Id */ + offerId?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerOfferExpired event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterWorkerOfferExpiredEventData extends AcsRouterWorkerEventData { + /** Router Worker Offer Expired Queue Id */ + queueId?: string; + + /** Router Worker Offer Expired Offer Id */ + offerId?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerOfferIssued event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterWorkerOfferIssuedEventData extends AcsRouterWorkerEventData { + /** Router Worker Offer Issued Queue Id */ + queueId?: string; + + /** Router Worker Offer Issued Offer Id */ + offerId?: string; + + /** Router Worker Offer Issued Job Priority */ + jobPriority?: int32; + + /** Router Worker Offer Issued Worker Labels */ + workerLabels?: Record; + + /** Router Worker Offer Issued Time in UTC */ + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + offeredOn?: utcDateTime; + + /** Router Worker Offer Issued Expiration Time in UTC */ + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + expiresOn?: utcDateTime; + + /** Router Worker Offer Issued Worker Tags */ + workerTags?: Record; + + /** Router Worker Offer Issued Job Labels */ + jobLabels?: Record; + + /** Router Worker Offer Issued Job Tags */ + jobTags?: Record; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerOfferRevoked event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterWorkerOfferRevokedEventData extends AcsRouterWorkerEventData { + /** Router Worker Offer Revoked Queue Id */ + queueId?: string; + + /** Router Worker Offer Revoked Offer Id */ + offerId?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerRegistered event */ +model AcsRouterWorkerRegisteredEventData { + /** Router Worker Registered Worker Id */ + workerId?: string; + + /** Router Worker Registered Queue Info */ + queueAssignments?: AcsRouterQueueDetails[]; + + /** Router Worker Registered Channel Configuration */ + channelConfigurations?: AcsRouterChannelConfiguration[]; + + /** Router Worker Register Total Capacity */ + totalCapacity?: int32; + + /** Router Worker Registered Labels */ + labels?: Record; + + /** Router Worker Registered Tags */ + tags?: Record; +} + +// Base Properties +/** Schema of common properties of all Router Job events */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterJobEventData extends AcsRouterEventData { + /** Router Job events Queue Id */ + queueId?: string; + + /** Router Job events Labels */ + labels?: Record; + + /** Router Jobs events Tags */ + tags?: Record; +} + +/** Schema of common properties of all Router Worker events */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsRouterWorkerEventData extends AcsRouterEventData { + /** Router Worker events Worker Id */ + workerId?: string; +} + +/** Schema of common properties of all Router events */ +model AcsRouterEventData { + /** Router Event Job ID */ + jobId?: string; + + /** Router Event Channel Reference */ + channelReference?: string; + + /** Router Event Channel ID */ + channelId?: string; +} + +/** Router Channel Configuration */ +model AcsRouterChannelConfiguration { + /** Channel ID for Router Job */ + channelId?: string; + + /** Capacity Cost Per Job for Router Job */ + capacityCostPerJob?: int32; + + /** Max Number of Jobs for Router Job */ + maxNumberOfJobs?: int32; +} + +/** Router Queue Details */ +model AcsRouterQueueDetails { + /** Router Queue Id */ + id?: string; + + /** Router Queue Name */ + name?: string; + + /** Router Queue Labels */ + labels?: Record; +} + +/** Router Communication Error */ +model AcsRouterCommunicationError { + /** Router Communication Error Code */ + code?: string; + + /** Router Communication Error Message */ + message?: string; + + /** Router Communication Error Target */ + target?: string; + + /** Router Communication Inner Error */ + innererror?: AcsRouterCommunicationError; + + /** List of Router Communication Errors */ + details?: AcsRouterCommunicationError[]; +} + +/** Router Job Worker Selector */ +model AcsRouterWorkerSelector { + /** Router Job Worker Selector Key */ + key?: string; + + /** Router Job Worker Selector Label Operator */ + operator?: AcsRouterLabelOperator; + + /** Router Job Worker Selector Value */ + #suppress "@azure-tools/typespec-azure-core/no-unknown" "The type of labelValue is object" + labelValue?: unknown; + + /** Router Job Worker Selector Time to Live in Seconds */ + @encode("ISO8601") // TODO verify this is timespan in C# + ttlSeconds?: duration; + + /** Router Job Worker Selector State */ + selectorState?: AcsRouterWorkerSelectorState; + + /** Router Job Worker Selector Expiration Time */ + expirationTime?: utcDateTime; +} + +alias AcsChatMessageBaseEventData = { + /** The body of the chat message */ + messageBody?: string; + + /** The chat message metadata */ + metadata?: Record; +}; + +alias AcsChatThreadBaseEventData = { + /** The communication identifier of the user who created the thread */ + createdByCommunicationIdentifier?: CommunicationIdentifierModel; + + /** The thread properties */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "The type of properties is object with additionalProperties: object" + properties?: Record; + + /** The thread metadata */ + metadata?: Record; + + /** The list of properties of participants who are part of the thread */ + participants?: AcsChatThreadParticipantProperties[]; +}; + +alias AcsChatThreadDeletedBaseEventData = { + /** The communication identifier of the user who deleted the thread */ + deletedByCommunicationIdentifier?: CommunicationIdentifierModel; + + /** The deletion time of the thread */ + deleteTime?: utcDateTime; +}; + +alias AcsChatThreadPropertiesBaseEventData = { + /** The communication identifier of the user who updated the thread properties */ + editedByCommunicationIdentifier?: CommunicationIdentifierModel; + + /** The time at which the properties of the thread were updated */ + editTime?: utcDateTime; + + /** The updated thread properties */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "The type of properties is object with additionalProperties: object" + properties?: Record; + + /** The thread metadata */ + metadata?: Record; +}; + +alias AcsChatParticipantBaseEventData = { + /** The time at which the user was added to the thread */ + time?: utcDateTime; + + /** The communication identifier of the user who added the user */ + addedByCommunicationIdentifier?: CommunicationIdentifierModel; + + /** The details of the user who was added */ + participantAdded?: AcsChatThreadParticipantProperties; +}; + +/** Recording content type */ +union recordingContentType { + /** AudioVideo content type */ + "AudioVideo", + + /** Audio content type */ + "Audio", + + string, +} + +/** Recording channel type */ +union recordingChannelType { + /** Mixed channel type */ + "Mixed", + + /** Unmixed channel type */ + "Unmixed", + + string, +} + +/** Recording format type */ +union recordingFormatType { + /** WAV format */ + "Wav", + + /** MP3 format */ + "Mp3", + + /** MP4 format */ + "Mp4", + + string, +} + +/** Router Job Worker Selector Label Operator */ +union AcsRouterLabelOperator { + /** Router Label Operator Equal */ + "Equal", + + /** Router Label Operator Not Equal */ + "NotEqual", + + /** Router Label Operator Greater */ + "Greater", + + /** Router Label Operator Less */ + "Less", + + /** Router Label Operator Greater than or equal */ + "GreaterThanOrEqual", + + /** Router Label Operator Less than or equal */ + "LessThanOrEqual", + + string, +} + +/** Router Worker Selector State */ +union AcsRouterWorkerSelectorState { + /** Router Worker Selector State Active */ + Active: "active", + + /** Router Worker Selector State Expired */ + Expired: "expired", + + string, +} + +/** The status of the email. Any value other than Delivered is considered failed. */ +union AcsEmailDeliveryReportStatus { + /** Hard bounce detected while sending the email */ + "Bounced", + + /** The email was delivered */ + "Delivered", + + /** The email failed to be delivered */ + "Failed", + + /** The message was identified as spam and was rejected or blocked (not quarantined). */ + "FilteredSpam", + + /** The message was quarantined (as spam, bulk mail, or phishing). For more information, see Quarantined email messages in EOP (EXCHANGE ONLINE PROTECTION). */ + "Quarantined", + + /** The email was suppressed */ + "Suppressed", + + string, +} + +/** Detailed information about the status if any */ +model AcsEmailDeliveryReportStatusDetails { + /** Detailed status message */ + statusMessage?: string; +} + +/** Schema of common properties of all chat thread events */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatThreadEventBaseProperties extends AcsChatEventBaseProperties { + /** The original creation time of the thread */ + createTime?: utcDateTime; + + /** The version of the thread */ + version?: int64; +} + +/** Schema of common properties of all chat thread events */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatThreadEventInThreadBaseProperties + extends AcsChatEventInThreadBaseProperties { + /** The original creation time of the thread */ + createTime?: utcDateTime; + + /** The version of the thread */ + version?: int64; +} + +/** Schema of common properties of all chat message events */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatMessageEventBaseProperties extends AcsChatEventBaseProperties { + /** The chat message id */ + messageId?: string; + + /** The communication identifier of the sender */ + senderCommunicationIdentifier?: CommunicationIdentifierModel; + + /** The display name of the sender */ + senderDisplayName?: string; + + /** The original compose time of the message */ + composeTime?: utcDateTime; + + /** The type of the message */ + type?: string; + + /** The version of the message */ + version?: int64; +} + +/** Schema of common properties of all thread-level chat message events */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model AcsChatMessageEventInThreadBaseProperties + extends AcsChatEventInThreadBaseProperties { + /** The chat message id */ + messageId?: string; + + /** The communication identifier of the sender */ + senderCommunicationIdentifier?: CommunicationIdentifierModel; + + /** The display name of the sender */ + senderDisplayName?: string; + + /** The original compose time of the message */ + composeTime?: utcDateTime; + + /** The type of the message */ + type?: string; + + /** The version of the message */ + version?: int64; +} + +/** Schema of common properties of all thread-level chat events */ +model AcsChatEventInThreadBaseProperties { + /** The transaction id will be used as co-relation vector */ + transactionId?: string; + + /** The chat thread id */ + threadId?: string; +} + +/** Schema of common properties of all chat events */ +model AcsChatEventBaseProperties { + /** The communication identifier of the target user */ + recipientCommunicationIdentifier?: CommunicationIdentifierModel; + + ...AcsChatEventInThreadBaseProperties; +} + +/** Schema of the chat thread participant */ +model AcsChatThreadParticipantProperties { + /** The name of the user */ + displayName?: string; + + /** The communication identifier of the user */ + participantCommunicationIdentifier?: CommunicationIdentifierModel; + + /** The metadata of the user */ + metadata?: Record; +} + +/** Schema of common properties of all SMS events */ +model AcsSmsEventBaseProperties { + /** The identity of the SMS message */ + messageId?: string; + + /** The identity of SMS message sender */ + from?: string; + + /** The identity of SMS message receiver */ + to?: string; +} + +/** Schema for details of a delivery attempt */ +model AcsSmsDeliveryAttemptProperties { + /** TimeStamp when delivery was attempted */ + timestamp?: utcDateTime; + + /** Number of segments that were successfully delivered */ + segmentsSucceeded?: int32; + + /** Number of segments whose delivery failed */ + segmentsFailed?: int32; +} + +/** Schema for all properties of Recording Storage Information. */ +model AcsRecordingStorageInfoProperties { + /** List of details of recording chunks information */ + recordingChunks?: AcsRecordingChunkInfoProperties[]; +} + +/** Schema for all properties of Recording Chunk Information. */ +model AcsRecordingChunkInfoProperties { + /** The documentId of the recording chunk */ + documentId?: string; + + /** The index of the recording chunk */ + index?: int64; + + /** The reason for ending the recording chunk */ + endReason?: string; + + /** The location of the metadata for this chunk */ + metadataLocation?: string; + + /** The location of the content for this chunk */ + contentLocation?: string; + + /** The location to delete all chunk storage */ + deleteLocation?: string; +} + +/** Custom Context of Incoming Call */ +model AcsIncomingCallCustomContext { + /** Sip Headers for incoming call */ + sipHeaders?: Record; + + /** Voip Headers for incoming call */ + voipHeaders?: Record; +} + +/** The type of engagement user have with email. */ +union AcsUserEngagement { + /** View */ + "view", + + /** Click */ + "click", + + string, +} + +/** Identifies a participant in Azure Communication services. A participant is, for example, a phone number or an Azure communication user. This model must be interpreted as a union: Apart from rawId, at most one further property may be set. */ +model CommunicationIdentifierModel { + /** Raw Id of the identifier. Optional in requests, required in responses. */ + rawId?: string; + + /** The communication user. */ + communicationUser?: CommunicationUserIdentifierModel; + + /** The phone number. */ + phoneNumber?: PhoneNumberIdentifierModel; + + /** The Microsoft Teams user. */ + microsoftTeamsUser?: MicrosoftTeamsUserIdentifierModel; +} + +/** A Microsoft Teams user. */ +model MicrosoftTeamsUserIdentifierModel { + /** The Id of the Microsoft Teams user. If not anonymous, this is the AAD object Id of the user. */ + userId: string; + + /** True if the Microsoft Teams user is anonymous. By default false if missing. */ + isAnonymous?: boolean; + + /** The cloud that the Microsoft Teams user belongs to. By default 'public' if missing. */ + cloud?: CommunicationCloudEnvironmentModel; +} + +/** A phone number. */ +model PhoneNumberIdentifierModel { + /** The phone number in E.164 format. */ + value: string; +} + +/** A user that got created with an Azure Communication Services resource. */ +model CommunicationUserIdentifierModel { + /** The Id of the communication user. */ + id: string; +} + +/** Communication cloud environment model. */ +union CommunicationCloudEnvironmentModel { + /** Public */ + "public", + + /** Dod */ + "dod", + + /** Gcch */ + "gcch", + + string, +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ContainerRegistry.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ContainerRegistry.tsp new file mode 100644 index 0000000000000..3fb624ae24fac --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ContainerRegistry.tsp @@ -0,0 +1,171 @@ +/** Describes the schema of the Azure Container Registry events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents; + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ContainerRegistry.ImagePushed event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model ContainerRegistryImagePushedEventData + extends ContainerRegistryEventData {} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ContainerRegistry.ImageDeleted event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model ContainerRegistryImageDeletedEventData + extends ContainerRegistryEventData {} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ContainerRegistry.ChartPushed event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model ContainerRegistryChartPushedEventData + extends ContainerRegistryArtifactEventData {} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ContainerRegistry.ChartDeleted event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model ContainerRegistryChartDeletedEventData + extends ContainerRegistryArtifactEventData {} + +alias ContainerRegistryBaseEventData = { + /** The event ID. */ + id?: string; + + /** The time at which the event occurred. */ + timestamp?: utcDateTime; + + /** The action that encompasses the provided event. */ + action?: string; + + /** The location of the event. */ + location?: string; +}; + +/** The content of the event request message. */ +model ContainerRegistryEventData { + ...ContainerRegistryBaseEventData; + + /** The target of the event. */ + target?: ContainerRegistryEventTarget; + + /** The request that generated the event. */ + request?: ContainerRegistryEventRequest; + + /** The agent that initiated the event. For most situations, this could be from the authorization context of the request. */ + actor?: ContainerRegistryEventActor; + + /** The registry node that generated the event. Put differently, while the actor initiates the event, the source generates it. */ + source?: ContainerRegistryEventSource; + + /** The connected registry information if the event is generated by a connected registry. */ + connectedRegistry?: ContainerRegistryEventConnectedRegistry; +} + +/** The content of the event request message. */ +model ContainerRegistryArtifactEventData { + ...ContainerRegistryBaseEventData; + + /** The target of the event. */ + target?: ContainerRegistryArtifactEventTarget; + + /** The connected registry information if the event is generated by a connected registry. */ + connectedRegistry?: ContainerRegistryEventConnectedRegistry; +} + +/** The target of the event. */ +model ContainerRegistryEventTarget { + /** The MIME type of the referenced object. */ + mediaType?: string; + + /** The number of bytes of the content. Same as Length field. */ + size?: int64; + + /** The digest of the content, as defined by the Registry V2 HTTP API Specification. */ + digest?: string; + + /** The number of bytes of the content. Same as Size field. */ + length?: int64; + + /** The repository name. */ + repository?: string; + + /** The direct URL to the content. */ + url?: string; + + /** The tag name. */ + tag?: string; +} + +/** The target of the event. */ +model ContainerRegistryArtifactEventTarget { + ...ContainerRegistryBaseEventTarget< + "The MIME type of the artifact.", + "The size in bytes of the artifact.", + "The digest of the artifact.", + "The repository name of the artifact.", + "The tag of the artifact." + >; + + /** The name of the artifact. */ + name?: string; + + /** The version of the artifact. */ + version?: string; +} + +/** The request that generated the event. */ +model ContainerRegistryEventRequest { + /** The ID of the request that initiated the event. */ + 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; + + /** The request method that generated the event. */ + method?: string; + + /** The user agent header of the request. */ + useragent?: string; +} + +/** The agent that initiated the event. For most situations, this could be from the authorization context of the request. */ +model ContainerRegistryEventActor { + /** The subject or username associated with the request context that generated the event. */ + name?: string; +} + +/** The registry node that generated the event. Put differently, while the actor initiates the event, the source generates it. */ +model ContainerRegistryEventSource { + /** The IP or hostname and the port of the registry node that generated the event. Generally, this will be resolved by os.Hostname() along with the running port. */ + addr?: string; + + /** The running instance of an application. Changes after each restart. */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after the existing service swagger." + instanceID?: string; +} + +/** 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; +} + +alias ContainerRegistryBaseEventTarget< + TmediaType extends valueof string, + Tsize extends valueof string, + Tdigest extends valueof string, + Trepository extends valueof string, + Ttag extends valueof string +> = { + @doc(TmediaType) + mediaType?: string; + + @doc(Tsize) + size?: int64; + + @doc(Tdigest) + digest?: string; + + @doc(Trepository) + repository?: string; + + @doc(Ttag) + tag?: string; +}; diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ContainerService.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ContainerService.tsp new file mode 100644 index 0000000000000..289a00adda272 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ContainerService.tsp @@ -0,0 +1,54 @@ +/** Describes the schema of the Azure Kubernetes Service events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent */ +namespace Microsoft.EventGrid.SystemEvents; + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ContainerService.NewKubernetesVersionAvailable event */ +model ContainerServiceNewKubernetesVersionAvailableEventData { + /** The highest PATCH Kubernetes version for the highest MINOR version supported by ManagedCluster resource */ + latestSupportedKubernetesVersion?: string; + + /** The highest PATCH Kubernetes version for the MINOR version considered stable for the ManagedCluster resource */ + latestStableKubernetesVersion?: string; + + /** The highest PATCH Kubernetes version for the lowest applicable MINOR version available for the ManagedCluster resource */ + lowestMinorKubernetesVersion?: string; + + /** The highest PATCH Kubernetes version considered preview for the ManagedCluster resource. There might not be any version in preview at the time of publishing the event */ + latestPreviewKubernetesVersion?: string; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ContainerService.ClusterSupportEnded event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model ContainerServiceClusterSupportEndedEventData + extends ContainerServiceClusterSupportEventData {} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ContainerService.ClusterSupportEnding event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model ContainerServiceClusterSupportEndingEventData + extends ContainerServiceClusterSupportEventData {} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ContainerService.NodePoolRollingStarted event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model ContainerServiceNodePoolRollingStartedEventData + extends ContainerServiceNodePoolRollingEventData {} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ContainerService.NodePoolRollingSucceeded event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model ContainerServiceNodePoolRollingSucceededEventData + extends ContainerServiceNodePoolRollingEventData {} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.ContainerService.NodePoolRollingFailed event */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model ContainerServiceNodePoolRollingFailedEventData + extends ContainerServiceNodePoolRollingEventData {} + +/** Schema of common properties of cluster support events */ +model ContainerServiceClusterSupportEventData { + /** The Kubernetes version of the ManagedCluster resource */ + kubernetesVersion?: string; +} + +/** Schema of common properties of node pool rolling events */ +model ContainerServiceNodePoolRollingEventData { + /** The name of the node pool in the ManagedCluster resource */ + nodePoolName?: string; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/DataBox.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/DataBox.tsp new file mode 100644 index 0000000000000..d771641987e80 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/DataBox.tsp @@ -0,0 +1,42 @@ +/** EG DataBox Data Model */ +namespace Microsoft.EventGrid.SystemEvents { + /** Schema of the Data property of an EventGridEvent for a Microsoft.DataBox.CopyStarted event. */ + model DataBoxCopyStartedEventData { + ...DataBoxBase; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.DataBox.CopyCompleted event. */ + model DataBoxCopyCompletedEventData { + ...DataBoxBase; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.DataBox.OrderCompleted event. */ + model DataBoxOrderCompletedEventData { + ...DataBoxBase; + } + + alias DataBoxBase = { + /** Serial Number of the device associated with the event. The list is comma separated if more than one serial number is associated. */ + serialNumber?: string; + + /** Name of the current Stage */ + stageName?: DataBoxStageName; + + /** The time at which the stage happened. */ + stageTime?: utcDateTime; + }; + + /** Schema of DataBox Stage Name enumeration. */ + union DataBoxStageName { + /** Copy has started */ + "CopyStarted", + + /** Copy has completed */ + "CopyCompleted", + + /** Order has been completed */ + "OrderCompleted", + + string, + } +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/EventGrid.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/EventGrid.tsp new file mode 100644 index 0000000000000..01ef7c0d73597 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/EventGrid.tsp @@ -0,0 +1,177 @@ +/** Describes the schema of the Azure EventGrid events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents; + +/** EventGrid MQTT Client State */ +union EventGridMQTTClientState { + /** Enabled */ + "Enabled", + + /** Disabled */ + "Disabled", + + string, +} + +/** EventGrid MQTT Client Disconnection Reason */ +union EventGridMQTTClientDisconnectionReason { + /** The client got disconnected for any authentication reasons (for example, certificate expired, client got disabled, or client configuration changed). */ + "ClientAuthenticationError", + + /** The client got disconnected for any authorization reasons (for example, because of a change in the configuration of topic spaces, permission bindings, or client groups). */ + "ClientAuthorizationError", + + /** The client sent a bad request or used one of the unsupported features that resulted in a connection termination by the service. */ + "ClientError", + + /** The client initiated a graceful disconnect through a DISCONNECT packet for MQTT or a close frame for MQTT over WebSocket. */ + "ClientInitiatedDisconnect", + + /** The client-server connection is lost. (EXCHANGE ONLINE PROTECTION). */ + "ConnectionLost", + + /** The client's IP address is blocked by IP filter or Private links configuration. */ + "IpForbidden", + + /** The client exceeded one or more of the throttling limits that resulted in a connection termination by the service. */ + "QuotaExceeded", + + /** The connection got terminated due to an unexpected server error. */ + "ServerError", + + /** The server initiates a graceful disconnect for any operational reason. */ + "ServerInitiatedDisconnect", + + /** The client's queue for unacknowledged QoS1 messages reached its limit, which resulted in a connection termination by the server. */ + "SessionOverflow", + + /** The client reconnected with the same authentication name, which resulted in the termination of the previous connection. */ + "SessionTakenOver", + + string, +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.EventGrid.SystemEvents.SubscriptionValidationEvent event. */ +model SubscriptionValidationEventData { + /** The validation code sent by Azure Event Grid to validate an event subscription. + * To complete the validation handshake, the subscriber must either respond with this validation code as part of the validation response, + * or perform a GET request on the validationUrl (available starting version 2018-05-01-preview). */ + @visibility("read") + validationCode?: string; + + /** The validation URL sent by Azure Event Grid (available starting version 2018-05-01-preview). + * To complete the validation handshake, the subscriber must either respond with the validationCode as part of the validation response, + * or perform a GET request on the validationUrl (available starting version 2018-05-01-preview). */ + @visibility("read") + validationUrl?: string; +} + +/** +To complete an event subscription validation handshake, a subscriber can use +either the validationCode or the validationUrl received in a +SubscriptionValidationEvent. When the validationCode is used, the +SubscriptionValidationResponse can be used to build the response. +*/ +model SubscriptionValidationResponse { + /** The validation response sent by the subscriber to Azure Event Grid to complete the validation of an event subscription. */ + validationResponse?: string; +} + +/** +Schema of the Data property of an EventGridEvent for a +Microsoft.EventGrid.SystemEvents.SubscriptionDeletedEvent event. +*/ +model SubscriptionDeletedEventData { + /** The Azure resource ID of the deleted event subscription. */ + @visibility("read") + eventSubscriptionId?: string; +} + +/** Event data for Microsoft.EventGrid.SystemEvents.MQTTClientCreatedOrUpdated event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Following Swagger Inheritance" +#suppress "@azure-tools/typespec-azure-core/casing-style" "MQTT is an acronym and should be all caps" +model EventGridMQTTClientCreatedOrUpdatedEventData + extends EventGridMQTTClientEventData { + /** Configured state of the client. The value could be Enabled or Disabled */ + state?: EventGridMQTTClientState; + + /** Time the client resource is created based on the provider's UTC time. */ + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + createdOn?: utcDateTime; + + /** +Time the client resource is last updated based on the provider's UTC time. If +the client resource was never updated, this value is identical to the value of +the 'createdOn' property. +*/ + updatedOn?: utcDateTime; + + /** The key-value attributes that are assigned to the client resource. */ + attributes?: Record; +} + +/** Schema of the Data property of an EventGridEvent for MQTT Client state changes. */ +#suppress "@azure-tools/typespec-azure-core/casing-style" "MQTT is an acronym and should be all caps" +model EventGridMQTTClientEventData { + /** +Unique identifier for the MQTT client that the client presents to the service +for authentication. This case-sensitive string can be up to 128 characters +long, and supports UTF-8 characters. +*/ + clientAuthenticationName?: string; + + /** Name of the client resource in the Event Grid namespace. */ + clientName?: string; + + /** Name of the Event Grid namespace where the MQTT client was created or updated. */ + namespaceName?: string; +} + +/** Event data for Microsoft.EventGrid.SystemEvents.MQTTClientDeleted event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Following Swagger Inheritance" +#suppress "@azure-tools/typespec-azure-core/casing-style" "MQTT is an acronym and should be all caps" +model EventGridMQTTClientDeletedEventData + extends EventGridMQTTClientEventData {} + +/** Event data for Microsoft.EventGrid.SystemEvents.MQTTClientSessionConnected event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Following Swagger Inheritance" +#suppress "@azure-tools/typespec-azure-core/casing-style" "MQTT is an acronym and should be all caps" +model EventGridMQTTClientSessionConnectedEventData + extends EventGridMQTTClientEventData { + /** +Unique identifier for the MQTT client's session. This case-sensitive string can +be up to 128 characters long, and supports UTF-8 characters. +*/ + clientSessionName?: string; + + /** +A number that helps indicate order of MQTT client session connected or +disconnected events. Latest event will have a sequence number that is higher +than the previous event. +*/ + sequenceNumber?: int64; +} + +/** Event data for Microsoft.EventGrid.SystemEvents.MQTTClientSessionDisconnected event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Following Swagger Inheritance" +#suppress "@azure-tools/typespec-azure-core/casing-style" "MQTT is an acronym and should be all caps" +model EventGridMQTTClientSessionDisconnectedEventData + extends EventGridMQTTClientEventData { + /** +Unique identifier for the MQTT client's session. This case-sensitive string can +be up to 128 characters long, and supports UTF-8 characters. +*/ + clientSessionName?: string; + + /** +A number that helps indicate order of MQTT client session connected or +disconnected events. Latest event will have a sequence number that is higher +than the previous event. +*/ + sequenceNumber?: int64; + + /** +Reason for the disconnection of the MQTT client's session. The value could be +one of the values in the disconnection reasons table. +*/ + disconnectionReason?: EventGridMQTTClientDisconnectionReason; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/EventHub.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/EventHub.tsp new file mode 100644 index 0000000000000..8023d448c1575 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/EventHub.tsp @@ -0,0 +1,32 @@ +/** Describes the schema of the Azure EventHub events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents; + +/** Schema of the Data property of an EventGridEvent for a Microsoft.EventHub.CaptureFileCreated event. */ +model EventHubCaptureFileCreatedEventData { + /** The path to the capture file. */ + fileUrl?: string; + + /** The file type of the capture file. */ + fileType?: string; + + /** The shard ID. */ + partitionId?: string; + + /** The file size. */ + sizeInBytes?: int32; + + /** The number of events in the file. */ + eventCount?: int32; + + /** The smallest sequence number from the queue. */ + firstSequenceNumber?: int32; + + /** The last sequence number from the queue. */ + lastSequenceNumber?: int32; + + /** The first time from the queue. */ + firstEnqueueTime?: utcDateTime; + + /** The last time from the queue. */ + lastEnqueueTime?: utcDateTime; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/HealthcareApis.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/HealthcareApis.tsp new file mode 100644 index 0000000000000..9343b4fefb2f4 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/HealthcareApis.tsp @@ -0,0 +1,599 @@ +/** Describes the schema of the Azure HealthcareApis events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents { + // model HealthcareFhirResourceType is string {} + /** Schema of the Data property of an EventGridEvent for a Microsoft.HealthcareApis.FhirResourceCreated event. */ + model HealthcareFhirResourceCreatedEventData { + /** Type of HL7 FHIR resource. */ + resourceType?: HealthcareFhirResourceType; + + /** Domain name of FHIR account for this resource. */ + resourceFhirAccount?: string; + + /** Id of HL7 FHIR resource. */ + resourceFhirId?: string; + + /** VersionId of HL7 FHIR resource. It changes when the resource is created, updated, or deleted(soft-deletion). */ + resourceVersionId?: int64; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.HealthcareApis.FhirResourceUpdated event. */ + model HealthcareFhirResourceUpdatedEventData { + /** Type of HL7 FHIR resource. */ + resourceType?: HealthcareFhirResourceType; + + /** Domain name of FHIR account for this resource. */ + resourceFhirAccount?: string; + + /** Id of HL7 FHIR resource. */ + resourceFhirId?: string; + + /** VersionId of HL7 FHIR resource. It changes when the resource is created, updated, or deleted(soft-deletion). */ + resourceVersionId?: int64; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.HealthcareApis.FhirResourceDeleted event. */ + model HealthcareFhirResourceDeletedEventData { + /** Type of HL7 FHIR resource. */ + resourceType?: HealthcareFhirResourceType; + + /** Domain name of FHIR account for this resource. */ + resourceFhirAccount?: string; + + /** Id of HL7 FHIR resource. */ + resourceFhirId?: string; + + /** VersionId of HL7 FHIR resource. It changes when the resource is created, updated, or deleted(soft-deletion). */ + resourceVersionId?: int64; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.HealthcareApis.DicomImageCreated event. */ + model HealthcareDicomImageCreatedEventData { + /** Data partition name */ + partitionName?: string; + + /** Unique identifier for the Study */ + imageStudyInstanceUid?: string; + + /** Unique identifier for the Series */ + imageSeriesInstanceUid?: string; + + /** Unique identifier for the DICOM Image */ + imageSopInstanceUid?: string; + + /** Domain name of the DICOM account for this image. */ + serviceHostName?: string; + + /** Sequence number of the DICOM Service within Azure Health Data Services. It is unique for every image creation and deletion within the service. */ + sequenceNumber?: int64; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.HealthcareApis.DicomImageDeleted event. */ + model HealthcareDicomImageDeletedEventData { + /** Data partition name */ + partitionName?: string; + + /** Unique identifier for the Study */ + imageStudyInstanceUid?: string; + + /** Unique identifier for the Series */ + imageSeriesInstanceUid?: string; + + /** Unique identifier for the DICOM Image */ + imageSopInstanceUid?: string; + + /** Host name of the DICOM account for this image. */ + serviceHostName?: string; + + /** Sequence number of the DICOM Service within Azure Health Data Services. It is unique for every image creation and deletion within the service. */ + sequenceNumber?: int64; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.HealthcareApis.DicomImageUpdated event. */ + model HealthcareDicomImageUpdatedEventData { + /** Data partition name */ + partitionName?: string; + + /** Unique identifier for the Study */ + imageStudyInstanceUid?: string; + + /** Unique identifier for the Series */ + imageSeriesInstanceUid?: string; + + /** Unique identifier for the DICOM Image */ + imageSopInstanceUid?: string; + + /** Domain name of the DICOM account for this image. */ + serviceHostName?: string; + + /** Sequence number of the DICOM Service within Azure Health Data Services. It is unique for every image creation, updation and deletion within the service. */ + sequenceNumber?: int64; + } + + /** Schema of FHIR resource type enumeration. */ + union HealthcareFhirResourceType { + /** The FHIR resource type defined in STU3 and R4. */ + "Account", + + /** The FHIR resource type defined in STU3 and R4. */ + "ActivityDefinition", + + /** The FHIR resource type defined in STU3 and R4. */ + "AdverseEvent", + + /** The FHIR resource type defined in STU3 and R4. */ + "AllergyIntolerance", + + /** The FHIR resource type defined in STU3 and R4. */ + "Appointment", + + /** The FHIR resource type defined in STU3 and R4. */ + "AppointmentResponse", + + /** The FHIR resource type defined in STU3 and R4. */ + "AuditEvent", + + /** The FHIR resource type defined in STU3 and R4. */ + "Basic", + + /** The FHIR resource type defined in STU3 and R4. */ + "Binary", + + /** The FHIR resource type defined in R4. */ + "BiologicallyDerivedProduct", + + /** The FHIR resource type defined in STU3. */ + "BodySite", + + /** The FHIR resource type defined in R4. */ + "BodyStructure", + + /** The FHIR resource type defined in STU3 and R4. */ + "Bundle", + + /** The FHIR resource type defined in STU3 and R4. */ + "CapabilityStatement", + + /** The FHIR resource type defined in STU3 and R4. */ + "CarePlan", + + /** The FHIR resource type defined in STU3 and R4. */ + "CareTeam", + + /** The FHIR resource type defined in R4. */ + "CatalogEntry", + + /** The FHIR resource type defined in STU3 and R4. */ + "ChargeItem", + + /** The FHIR resource type defined in R4. */ + "ChargeItemDefinition", + + /** The FHIR resource type defined in STU3 and R4. */ + "Claim", + + /** The FHIR resource type defined in STU3 and R4. */ + "ClaimResponse", + + /** The FHIR resource type defined in STU3 and R4. */ + "ClinicalImpression", + + /** The FHIR resource type defined in STU3 and R4. */ + "CodeSystem", + + /** The FHIR resource type defined in STU3 and R4. */ + "Communication", + + /** The FHIR resource type defined in STU3 and R4. */ + "CommunicationRequest", + + /** The FHIR resource type defined in STU3 and R4. */ + "CompartmentDefinition", + + /** The FHIR resource type defined in STU3 and R4. */ + "Composition", + + /** The FHIR resource type defined in STU3 and R4. */ + "ConceptMap", + + /** The FHIR resource type defined in STU3 and R4. */ + "Condition", + + /** The FHIR resource type defined in STU3 and R4. */ + "Consent", + + /** The FHIR resource type defined in STU3 and R4. */ + "Contract", + + /** The FHIR resource type defined in STU3 and R4. */ + "Coverage", + + /** The FHIR resource type defined in R4. */ + "CoverageEligibilityRequest", + + /** The FHIR resource type defined in R4. */ + "CoverageEligibilityResponse", + + /** The FHIR resource type defined in STU3. */ + "DataElement", + + /** The FHIR resource type defined in STU3 and R4. */ + "DetectedIssue", + + /** The FHIR resource type defined in STU3 and R4. */ + "Device", + + /** The FHIR resource type defined in STU3. */ + "DeviceComponent", + + /** The FHIR resource type defined in R4. */ + "DeviceDefinition", + + /** The FHIR resource type defined in STU3 and R4. */ + "DeviceMetric", + + /** The FHIR resource type defined in STU3 and R4. */ + "DeviceRequest", + + /** The FHIR resource type defined in STU3 and R4. */ + "DeviceUseStatement", + + /** The FHIR resource type defined in STU3 and R4. */ + "DiagnosticReport", + + /** The FHIR resource type defined in STU3 and R4. */ + "DocumentManifest", + + /** The FHIR resource type defined in STU3 and R4. */ + "DocumentReference", + + /** The FHIR resource type defined in STU3 and R4. */ + "DomainResource", + + /** The FHIR resource type defined in R4. */ + "EffectEvidenceSynthesis", + + /** The FHIR resource type defined in STU3. */ + "EligibilityRequest", + + /** The FHIR resource type defined in STU3. */ + "EligibilityResponse", + + /** The FHIR resource type defined in STU3 and R4. */ + "Encounter", + + /** The FHIR resource type defined in STU3 and R4. */ + "Endpoint", + + /** The FHIR resource type defined in STU3 and R4. */ + "EnrollmentRequest", + + /** The FHIR resource type defined in STU3 and R4. */ + "EnrollmentResponse", + + /** The FHIR resource type defined in STU3 and R4. */ + "EpisodeOfCare", + + /** The FHIR resource type defined in R4. */ + "EventDefinition", + + /** The FHIR resource type defined in R4. */ + "Evidence", + + /** The FHIR resource type defined in R4. */ + "EvidenceVariable", + + /** The FHIR resource type defined in R4. */ + "ExampleScenario", + + /** The FHIR resource type defined in STU3. */ + "ExpansionProfile", + + /** The FHIR resource type defined in STU3 and R4. */ + "ExplanationOfBenefit", + + /** The FHIR resource type defined in STU3 and R4. */ + "FamilyMemberHistory", + + /** The FHIR resource type defined in STU3 and R4. */ + "Flag", + + /** The FHIR resource type defined in STU3 and R4. */ + "Goal", + + /** The FHIR resource type defined in STU3 and R4. */ + "GraphDefinition", + + /** The FHIR resource type defined in STU3 and R4. */ + "Group", + + /** The FHIR resource type defined in STU3 and R4. */ + "GuidanceResponse", + + /** The FHIR resource type defined in STU3 and R4. */ + "HealthcareService", + + /** The FHIR resource type defined in STU3. */ + "ImagingManifest", + + /** The FHIR resource type defined in STU3 and R4. */ + "ImagingStudy", + + /** The FHIR resource type defined in STU3 and R4. */ + "Immunization", + + /** The FHIR resource type defined in R4. */ + "ImmunizationEvaluation", + + /** The FHIR resource type defined in STU3 and R4. */ + "ImmunizationRecommendation", + + /** The FHIR resource type defined in STU3 and R4. */ + "ImplementationGuide", + + /** The FHIR resource type defined in R4. */ + "InsurancePlan", + + /** The FHIR resource type defined in R4. */ + "Invoice", + + /** The FHIR resource type defined in STU3 and R4. */ + "Library", + + /** The FHIR resource type defined in STU3 and R4. */ + "Linkage", + + /** The FHIR resource type defined in STU3 and R4. */ + "List", + + /** The FHIR resource type defined in STU3 and R4. */ + "Location", + + /** The FHIR resource type defined in STU3 and R4. */ + "Measure", + + /** The FHIR resource type defined in STU3 and R4. */ + "MeasureReport", + + /** The FHIR resource type defined in STU3 and R4. */ + "Media", + + /** The FHIR resource type defined in STU3 and R4. */ + "Medication", + + /** The FHIR resource type defined in STU3 and R4. */ + "MedicationAdministration", + + /** The FHIR resource type defined in STU3 and R4. */ + "MedicationDispense", + + /** The FHIR resource type defined in R4. */ + "MedicationKnowledge", + + /** The FHIR resource type defined in STU3 and R4. */ + "MedicationRequest", + + /** The FHIR resource type defined in STU3 and R4. */ + "MedicationStatement", + + /** The FHIR resource type defined in R4. */ + "MedicinalProduct", + + /** The FHIR resource type defined in R4. */ + "MedicinalProductAuthorization", + + /** The FHIR resource type defined in R4. */ + "MedicinalProductContraindication", + + /** The FHIR resource type defined in R4. */ + "MedicinalProductIndication", + + /** The FHIR resource type defined in R4. */ + "MedicinalProductIngredient", + + /** The FHIR resource type defined in R4. */ + "MedicinalProductInteraction", + + /** The FHIR resource type defined in R4. */ + "MedicinalProductManufactured", + + /** The FHIR resource type defined in R4. */ + "MedicinalProductPackaged", + + /** The FHIR resource type defined in R4. */ + "MedicinalProductPharmaceutical", + + /** The FHIR resource type defined in R4. */ + "MedicinalProductUndesirableEffect", + + /** The FHIR resource type defined in STU3 and R4. */ + "MessageDefinition", + + /** The FHIR resource type defined in STU3 and R4. */ + "MessageHeader", + + /** The FHIR resource type defined in R4. */ + "MolecularSequence", + + /** The FHIR resource type defined in STU3 and R4. */ + "NamingSystem", + + /** The FHIR resource type defined in STU3 and R4. */ + "NutritionOrder", + + /** The FHIR resource type defined in STU3 and R4. */ + "Observation", + + /** The FHIR resource type defined in R4. */ + "ObservationDefinition", + + /** The FHIR resource type defined in STU3 and R4. */ + "OperationDefinition", + + /** The FHIR resource type defined in STU3 and R4. */ + "OperationOutcome", + + /** The FHIR resource type defined in STU3 and R4. */ + "Organization", + + /** The FHIR resource type defined in R4. */ + "OrganizationAffiliation", + + /** The FHIR resource type defined in STU3 and R4. */ + "Parameters", + + /** The FHIR resource type defined in STU3 and R4. */ + "Patient", + + /** The FHIR resource type defined in STU3 and R4. */ + "PaymentNotice", + + /** The FHIR resource type defined in STU3 and R4. */ + "PaymentReconciliation", + + /** The FHIR resource type defined in STU3 and R4. */ + "Person", + + /** The FHIR resource type defined in STU3 and R4. */ + "PlanDefinition", + + /** The FHIR resource type defined in STU3 and R4. */ + "Practitioner", + + /** The FHIR resource type defined in STU3 and R4. */ + "PractitionerRole", + + /** The FHIR resource type defined in STU3 and R4. */ + "Procedure", + + /** The FHIR resource type defined in STU3. */ + "ProcedureRequest", + + /** The FHIR resource type defined in STU3. */ + "ProcessRequest", + + /** The FHIR resource type defined in STU3. */ + "ProcessResponse", + + /** The FHIR resource type defined in STU3 and R4. */ + "Provenance", + + /** The FHIR resource type defined in STU3 and R4. */ + "Questionnaire", + + /** The FHIR resource type defined in STU3 and R4. */ + "QuestionnaireResponse", + + /** The FHIR resource type defined in STU3. */ + "ReferralRequest", + + /** The FHIR resource type defined in STU3 and R4. */ + "RelatedPerson", + + /** The FHIR resource type defined in STU3 and R4. */ + "RequestGroup", + + /** The FHIR resource type defined in R4. */ + "ResearchDefinition", + + /** The FHIR resource type defined in R4. */ + "ResearchElementDefinition", + + /** The FHIR resource type defined in STU3 and R4. */ + "ResearchStudy", + + /** The FHIR resource type defined in STU3 and R4. */ + "ResearchSubject", + + /** The FHIR resource type defined in STU3 and R4. */ + "Resource", + + /** The FHIR resource type defined in STU3 and R4. */ + "RiskAssessment", + + /** The FHIR resource type defined in R4. */ + "RiskEvidenceSynthesis", + + /** The FHIR resource type defined in STU3 and R4. */ + "Schedule", + + /** The FHIR resource type defined in STU3 and R4. */ + "SearchParameter", + + /** The FHIR resource type defined in STU3. */ + "Sequence", + + /** The FHIR resource type defined in STU3. */ + "ServiceDefinition", + + /** The FHIR resource type defined in R4. */ + "ServiceRequest", + + /** The FHIR resource type defined in STU3 and R4. */ + "Slot", + + /** The FHIR resource type defined in STU3 and R4. */ + "Specimen", + + /** The FHIR resource type defined in R4. */ + "SpecimenDefinition", + + /** The FHIR resource type defined in STU3 and R4. */ + "StructureDefinition", + + /** The FHIR resource type defined in STU3 and R4. */ + "StructureMap", + + /** The FHIR resource type defined in STU3 and R4. */ + "Subscription", + + /** The FHIR resource type defined in STU3 and R4. */ + "Substance", + + /** The FHIR resource type defined in R4. */ + "SubstanceNucleicAcid", + + /** The FHIR resource type defined in R4. */ + "SubstancePolymer", + + /** The FHIR resource type defined in R4. */ + "SubstanceProtein", + + /** The FHIR resource type defined in R4. */ + "SubstanceReferenceInformation", + + /** The FHIR resource type defined in R4. */ + "SubstanceSourceMaterial", + + /** The FHIR resource type defined in R4. */ + "SubstanceSpecification", + + /** The FHIR resource type defined in STU3 and R4. */ + "SupplyDelivery", + + /** The FHIR resource type defined in STU3 and R4. */ + "SupplyRequest", + + /** The FHIR resource type defined in STU3 and R4. */ + "Task", + + /** The FHIR resource type defined in R4. */ + "TerminologyCapabilities", + + /** The FHIR resource type defined in STU3 and R4. */ + "TestReport", + + /** The FHIR resource type defined in STU3 and R4. */ + "TestScript", + + /** The FHIR resource type defined in STU3 and R4. */ + "ValueSet", + + /** The FHIR resource type defined in R4. */ + "VerificationResult", + + /** The FHIR resource type defined in STU3 and R4. */ + "VisionPrescription", + + string, + } +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/IotHub.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/IotHub.tsp new file mode 100644 index 0000000000000..f642c5be97486 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/IotHub.tsp @@ -0,0 +1,145 @@ +/** Describes the schema of the Azure IoT Hub events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +#suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after the existing service swagger." +namespace Microsoft.EventGrid.SystemEvents; + +/** Schema of the Data property of an EventGridEvent for a device life cycle event (DeviceCreated, DeviceDeleted). */ +model DeviceLifeCycleEventProperties { + /** The unique identifier of the device. This case-sensitive string can be up to 128 characters long, and supports ASCII 7-bit alphanumeric characters plus the following special characters: - : . + % _ # * ? ! ( ) , = `@` ; $ '. */ + deviceId?: string; + + /** Name of the IoT Hub where the device was created or deleted. */ + hubName?: string; + + /** Information about the device twin, which is the cloud representation of application device metadata. */ + twin?: DeviceTwinInfo; +} + +/** Metadata information for the properties JSON document. */ +model DeviceTwinMetadata { + /** The ISO8601 timestamp of the last time the properties were updated. */ + lastUpdated?: string; +} + +/** A portion of the properties that can be written only by the application back-end, and read by the device. */ +model DeviceTwinProperties { + /** Metadata information for the properties JSON document. */ + metadata?: DeviceTwinMetadata; + + /** Version of device twin properties. */ + version?: float32; +} + +//THIS IS WHAT IS CAUSING THE ISSUE +/** Information about the device twin, which is the cloud representation of application device metadata. */ +model DeviceTwinInfo { + /** Authentication type used for this device: either SAS, SelfSigned, or CertificateAuthority. */ + authenticationType?: string; + + /** Count of cloud to device messages sent to this device. */ + cloudToDeviceMessageCount?: float32; + + /** Whether the device is connected or disconnected. */ + connectionState?: string; + + /** The unique identifier of the device twin. */ + deviceId?: string; + + /** A piece of information that describes the content of the device twin. Each etag is guaranteed to be unique per device twin. */ + etag?: string; + + /** The ISO8601 timestamp of the last activity. */ + lastActivityTime?: string; + + //TODO: something here needs to change + + /** Properties JSON element. */ + properties?: DeviceTwinInfoProperties; + + /** Whether the device twin is enabled or disabled. */ + status?: string; + + /** The ISO8601 timestamp of the last device twin status update. */ + statusUpdateTime?: string; + + /** An integer that is incremented by one each time the device twin is updated. */ + version?: float32; + + //TODO: also here + + /** The thumbprint is a unique value for the x509 certificate, commonly used to find a particular certificate in a certificate store. The thumbprint is dynamically generated using the SHA1 algorithm, and does not physically exist in the certificate. */ + x509Thumbprint?: DeviceTwinInfoX509Thumbprint; +} + +/** Schema of the Data property of an EventGridEvent for a device connection state event (DeviceConnected, DeviceDisconnected). */ +model DeviceConnectionStateEventProperties { + /** The unique identifier of the device. This case-sensitive string can be up to 128 characters long, and supports ASCII 7-bit alphanumeric characters plus the following special characters: - : . + % _ # * ? ! ( ) , = `@` ; $ '. */ + deviceId?: string; + + /** The unique identifier of the module. This case-sensitive string can be up to 128 characters long, and supports ASCII 7-bit alphanumeric characters plus the following special characters: - : . + % _ # * ? ! ( ) , = `@` ; $ '. */ + moduleId?: string; + + /** Name of the IoT Hub where the device was created or deleted. */ + hubName?: string; + + /** Information about the device connection state event. */ + deviceConnectionStateEventInfo?: DeviceConnectionStateEventInfo; +} + +/** Schema of the Data property of an EventGridEvent for a device telemetry event (DeviceTelemetry). */ +model DeviceTelemetryEventProperties { + /** The content of the message from the device. */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "The type of body is object" + body?: Record; + + /** Application properties are user-defined strings that can be added to the message. These fields are optional. */ + properties?: Record; + + /** System properties help identify contents and source of the messages. */ + systemProperties?: Record; +} + +/** Information about the device connection state event. */ +model DeviceConnectionStateEventInfo { + /** Sequence number is string representation of a hexadecimal number. string compare can be used to identify the larger number because both in ASCII and HEX numbers come after alphabets. If you are converting the string to hex, then the number is a 256 bit number. */ + sequenceNumber?: string; +} + +/** Event data for Microsoft.Devices.DeviceCreated event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model IotHubDeviceCreatedEventData extends DeviceLifeCycleEventProperties {} + +/** Event data for Microsoft.Devices.DeviceDeleted event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model IotHubDeviceDeletedEventData extends DeviceLifeCycleEventProperties {} + +/** Event data for Microsoft.Devices.DeviceConnected event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model IotHubDeviceConnectedEventData + extends DeviceConnectionStateEventProperties {} + +/** Event data for Microsoft.Devices.DeviceDisconnected event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model IotHubDeviceDisconnectedEventData + extends DeviceConnectionStateEventProperties {} + +/** Event data for Microsoft.Devices.DeviceTelemetry event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model IotHubDeviceTelemetryEventData extends DeviceTelemetryEventProperties {} + +/** The thumbprint is a unique value for the x509 certificate, commonly used to find a particular certificate in a certificate store. The thumbprint is dynamically generated using the SHA1 algorithm, and does not physically exist in the certificate. */ +model DeviceTwinInfoX509Thumbprint { + /** Primary thumbprint for the x509 certificate. */ + primaryThumbprint?: string; + + /** Secondary thumbprint for the x509 certificate. */ + secondaryThumbprint?: string; +} + +/** Properties JSON element. */ +model DeviceTwinInfoProperties { + /** A portion of the properties that can be written only by the application back-end, and read by the device. */ + desired?: DeviceTwinProperties; + + /** A portion of the properties that can be written only by the device, and read by the application back-end. */ + reported?: DeviceTwinProperties; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/KeyVault.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/KeyVault.tsp new file mode 100644 index 0000000000000..785bcb7399171 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/KeyVault.tsp @@ -0,0 +1,82 @@ +/** Describes the schema of the Azure Key Vault events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents { + /** Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.CertificateNewVersionCreated event. */ + model KeyVaultCertificateNewVersionCreatedEventData { + ...KeyVaultCertificateBase; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.CertificateNearExpiry event. */ + model KeyVaultCertificateNearExpiryEventData { + ...KeyVaultCertificateBase; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.CertificateExpired event. */ + model KeyVaultCertificateExpiredEventData { + ...KeyVaultCertificateBase; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.KeyNewVersionCreated event. */ + model KeyVaultKeyNewVersionCreatedEventData { + ...KeyVaultCertificateBase; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.KeyNearExpiry event. */ + model KeyVaultKeyNearExpiryEventData { + ...KeyVaultCertificateBase; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.KeyExpired event. */ + model KeyVaultKeyExpiredEventData { + ...KeyVaultCertificateBase; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.SecretNewVersionCreated event. */ + model KeyVaultSecretNewVersionCreatedEventData { + ...KeyVaultCertificateBase; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.SecretNearExpiry event. */ + model KeyVaultSecretNearExpiryEventData { + ...KeyVaultCertificateBase; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.SecretExpired event. */ + model KeyVaultSecretExpiredEventData { + ...KeyVaultCertificateBase; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.VaultAccessPolicyChanged event. */ + model KeyVaultVaultAccessPolicyChangedEventData { + ...KeyVaultCertificateBase; + } + + alias KeyVaultCertificateBase = { + /** The id of the object that triggered this event. */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after service swagger." + Id?: string; + + /** Key vault name of the object that triggered this event. */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after service swagger." + VaultName?: string; + + /** The type of the object that triggered this event */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after service swagger." + ObjectType?: string; + + /** The name of the object that triggered this event */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after service swagger." + ObjectName?: string; + + /** The version of the object that triggered this event */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after service swagger." + Version?: string; + + /** Not before date of the object that triggered this event */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after service swagger." + NBF?: float32; + + /** The expiration date of the object that triggered this event */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after service swagger." + EXP?: float32; + }; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/MachineLearningServices.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/MachineLearningServices.tsp new file mode 100644 index 0000000000000..5527e7d244def --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/MachineLearningServices.tsp @@ -0,0 +1,115 @@ +/** Describes the schema of the Azure Machine Learning Services events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents; + +/** Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.ModelRegistered event. */ +model MachineLearningServicesModelRegisteredEventData { + /** The name of the model that was registered. */ + modelName?: string; + + /** The version of the model that was registered. */ + modelVersion?: string; + + /** The tags of the model that was registered. */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "Model tags is type object" + modelTags?: Record; + + /** The properties of the model that was registered. */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "Model tags is type object" + modelProperties?: Record; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.ModelDeployed event. */ +model MachineLearningServicesModelDeployedEventData { + /** The name of the deployed service. */ + serviceName?: string; + + /** The compute type (e.g. ACI, AKS) of the deployed service. */ + serviceComputeType?: string; + + /** A common separated list of model IDs. The IDs of the models deployed in the service. */ + modelIds?: string; + + /** The tags of the deployed service. */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "Service tags is type any" + serviceTags?: Record; + + /** The properties of the deployed service. */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "Service properties is type any" + serviceProperties?: Record; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.RunCompleted event. */ +model MachineLearningServicesRunCompletedEventData { + /** The ID of the experiment that the run belongs to. */ + experimentId?: string; + + /** The name of the experiment that the run belongs to. */ + experimentName?: string; + + /** The ID of the Run that was completed. */ + runId?: string; + + /** The Run Type of the completed Run. */ + runType?: string; + + /** The tags of the completed Run. */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "Run tags is type any" + runTags?: Record; + + /** The properties of the completed Run. */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "Run properties is type any" + runProperties?: Record; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.DatasetDriftDetected event. */ +model MachineLearningServicesDatasetDriftDetectedEventData { + /** The ID of the data drift monitor that triggered the event. */ + dataDriftId?: string; + + /** The name of the data drift monitor that triggered the event. */ + dataDriftName?: string; + + /** The ID of the Run that detected data drift. */ + runId?: string; + + /** The ID of the base Dataset used to detect drift. */ + baseDatasetId?: string; + + /** The ID of the target Dataset used to detect drift. */ + targetDatasetId?: string; + + /** The coefficient result that triggered the event. */ + driftCoefficient?: float64; + + /** The start time of the target dataset time series that resulted in drift detection. */ + startTime?: utcDateTime; + + /** The end time of the target dataset time series that resulted in drift detection. */ + endTime?: utcDateTime; +} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.RunStatusChanged event. */ +model MachineLearningServicesRunStatusChangedEventData { + /** The ID of the experiment that the Machine Learning Run belongs to. */ + experimentId?: string; + + /** The name of the experiment that the Machine Learning Run belongs to. */ + experimentName?: string; + + /** The ID of the Machine Learning Run. */ + runId?: string; + + /** The Run Type of the Machine Learning Run. */ + runType?: string; + + /** The tags of the Machine Learning Run. */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "Run tags is type object" + runTags?: Record; + + /** The properties of the Machine Learning Run. */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "Run properties is type object" + runProperties?: Record; + + /** The status of the Machine Learning Run. */ + runStatus?: string; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Maps.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Maps.tsp new file mode 100644 index 0000000000000..5d0ff3d6b22f0 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Maps.tsp @@ -0,0 +1,50 @@ +/** Describes the schema of the Azure Maps events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents; + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Maps.GeofenceEntered event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model MapsGeofenceEnteredEventData extends MapsGeofenceEventProperties {} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Maps.GeofenceExited event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model MapsGeofenceExitedEventData extends MapsGeofenceEventProperties {} + +/** Schema of the Data property of an EventGridEvent for a Microsoft.Maps.GeofenceResult event. */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model MapsGeofenceResultEventData extends MapsGeofenceEventProperties {} + +/** Schema of the Data property of an EventGridEvent for a Geofence event (GeofenceEntered, GeofenceExited, GeofenceResult). */ +model MapsGeofenceEventProperties { + /** Lists of the geometry ID of the geofence which is expired relative to the user time in the request. */ + expiredGeofenceGeometryId?: string[]; + + /** Lists the fence geometries that either fully contain the coordinate position or have an overlap with the searchBuffer around the fence. */ + geometries?: MapsGeofenceGeometry[]; + + /** Lists of the geometry ID of the geofence which is in invalid period relative to the user time in the request. */ + invalidPeriodGeofenceGeometryId?: string[]; + + /** True if at least one event is published to the Azure Maps event subscriber, false if no event is published to the Azure Maps event subscriber. */ + isEventPublished?: boolean; +} + +/** The geofence geometry. */ +model MapsGeofenceGeometry { + /** ID of the device. */ + deviceId?: string; + + /** Distance from the coordinate to the closest border of the geofence. Positive means the coordinate is outside of the geofence. If the coordinate is outside of the geofence, but more than the value of searchBuffer away from the closest geofence border, then the value is 999. Negative means the coordinate is inside of the geofence. If the coordinate is inside the polygon, but more than the value of searchBuffer away from the closest geofencing border,then the value is -999. A value of 999 means that there is great confidence the coordinate is well outside the geofence. A value of -999 means that there is great confidence the coordinate is well within the geofence. */ + distance?: float32; + + /** The unique ID for the geofence geometry. */ + geometryId?: string; + + /** Latitude of the nearest point of the geometry. */ + nearestLat?: float32; + + /** Longitude of the nearest point of the geometry. */ + nearestLon?: float32; + + /** The unique id returned from user upload service when uploading a geofence. Will not be included in geofencing post API. */ + udId?: string; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/MediaServices.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/MediaServices.tsp new file mode 100644 index 0000000000000..cc7faf2af7490 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/MediaServices.tsp @@ -0,0 +1,570 @@ +/** Describes the schema of the Azure Media Services events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents { + /** State of a Media Job. */ + union MediaJobState { + /** The job was canceled. This is a final state for the job. */ + "Canceled", + + /** The job is in the process of being canceled. This is a transient state for the job. */ + "Canceling", + + /** The job has encountered an error. This is a final state for the job. */ + "Error", + + /** The job is finished. This is a final state for the job. */ + "Finished", + + /** The job is processing. This is a transient state for the job. */ + "Processing", + + /** The job is in a queued state, waiting for resources to become available. This is a transient state. */ + "Queued", + + /** The job is being scheduled to run on an available resource. This is a transient state, between queued and processing states. */ + "Scheduled", + + string, + } + + /** Media Job Error Codes. */ + union MediaJobErrorCode { + /** Fatal service error, please contact support. */ + "ServiceError", + + /** Transient error, please retry, if retry is unsuccessful, please contact support. */ + "ServiceTransientError", + + /** While trying to download the input files, the files were not accessible, please check the availability of the source. */ + "DownloadNotAccessible", + + /** While trying to download the input files, there was an issue during transfer (storage service, network errors), see details and check your source. */ + "DownloadTransientError", + + /** While trying to upload the output files, the destination was not reachable, please check the availability of the destination. */ + "UploadNotAccessible", + + /** While trying to upload the output files, there was an issue during transfer (storage service, network errors), see details and check your destination. */ + "UploadTransientError", + + /** There was a problem with the combination of input files and the configuration settings applied, fix the configuration settings and retry with the same input, or change input to match the configuration. */ + "ConfigurationUnsupported", + + /** There was a problem with the input content (for example: zero byte files, or corrupt/non-decodable files), check the input files. */ + "ContentMalformed", + + /** There was a problem with the format of the input (not valid media file, or an unsupported file/codec), check the validity of the input files. */ + "ContentUnsupported", + + /** There is an error verifying to the account identity. Check and fix the identity configurations and retry. If unsuccessful, please contact support. */ + "IdentityUnsupported", + + string, + } + + /** Error categories for Media Job Errors. */ + union MediaJobErrorCategory { + /** The error is service related. */ + "Service", + + /** The error is download related. */ + "Download", + + /** The error is upload related. */ + "Upload", + + /** The error is configuration related. */ + "Configuration", + + /** The error is related to data in the input files. */ + "Content", + + /** The error is related to account information. */ + "Account", + + string, + } + + /** Media Job Retry Options. */ + union MediaJobRetry { + /** Issue needs to be investigated and then the job resubmitted with corrections or retried once the underlying issue has been corrected. */ + "DoNotRetry", + + /** Issue may be resolved after waiting for a period of time and resubmitting the same Job. */ + "MayRetry", + + string, + } + + /** + Schema of the Data property of an EventGridEvent for a + Microsoft.Media.JobStateChange event. + */ + model MediaJobStateChangeEventData { + /** The previous state of the Job. */ + @visibility("read") + previousState?: MediaJobState; + + /** The new state of the Job. */ + @visibility("read") + state?: MediaJobState; + + /** Gets the Job correlation data. */ + correlationData?: Record; + } + + /** Details of JobOutput errors. */ + model MediaJobError { + /** Error code describing the error. */ + @visibility("read") + code?: MediaJobErrorCode; + + /** A human-readable language-dependent representation of the error. */ + @visibility("read") + message?: string; + + /** Helps with categorization of errors. */ + @visibility("read") + category?: MediaJobErrorCategory; + + /** Indicates that it may be possible to retry the Job. If retry is unsuccessful, please contact Azure support via Azure Portal. */ + @visibility("read") + retry?: MediaJobRetry; + + /** An array of details about specific errors that led to this reported error. */ + @visibility("read") + details?: MediaJobErrorDetail[]; + } + + /** Details of JobOutput errors. */ + model MediaJobErrorDetail { + /** Code describing the error detail. */ + @visibility("read") + code?: string; + + /** A human-readable representation of the error. */ + @visibility("read") + message?: string; + } + + /** The event data for a Job output. */ + @discriminator("@odataType") + model MediaJobOutput { + /** The discriminator for derived types. */ + `@odataType`: string; + + /** Gets the Job output error. */ + error?: MediaJobError; + + /** Gets the Job output label. */ + label?: string; + + /** Gets the Job output progress. */ + progress: int64; + + /** Gets the Job output state. */ + state: MediaJobState; + } + + /** The event data for a Job output asset. */ + model MediaJobOutputAsset extends MediaJobOutput { + /** Gets the Job output asset name. */ + assetName?: string; + + /** The discriminator for derived types. */ + `@odataType`: "#Microsoft.Media.JobOutputAsset"; + } + + /** + Job Output Progress Event Data. Schema of the Data property of an + EventGridEvent for a Microsoft.Media.JobOutputProgress event. + */ + model MediaJobOutputProgressEventData { + /** Gets the Job output label. */ + label?: string; + + /** Gets the Job output progress. */ + progress?: int64; + + /** Gets the Job correlation data. */ + jobCorrelationData?: Record; + } + + /** + Schema of the Data property of an EventGridEvent for a + Microsoft.Media.JobOutputStateChange event. + */ + model MediaJobOutputStateChangeEventData { + /** The previous state of the Job. */ + @visibility("read") + previousState?: MediaJobState; + + /** Gets the output. */ + output?: MediaJobOutput; + + /** Gets the Job correlation data. */ + jobCorrelationData?: Record; + } + + /** +Job scheduled event data. Schema of the data property of an EventGridEvent for +a Microsoft.Media.JobScheduled event. +*/ + #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." + model MediaJobScheduledEventData extends MediaJobStateChangeEventData {} + + /** +Job processing event data. Schema of the data property of an EventGridEvent for +a Microsoft.Media.JobProcessing event. +*/ + #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." + model MediaJobProcessingEventData extends MediaJobStateChangeEventData {} + + /** +Job canceling event data. Schema of the data property of an EventGridEvent for +a Microsoft.Media.JobCanceling event. +*/ + #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." + model MediaJobCancelingEventData extends MediaJobStateChangeEventData {} + + /** +Job finished event data. Schema of the data property of an EventGridEvent for a +Microsoft.Media.JobFinished event. +*/ + #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." + model MediaJobFinishedEventData extends MediaJobStateChangeEventData { + /** Gets the Job outputs. */ + outputs?: MediaJobOutput[]; + } + + /** +Job canceled event data. Schema of the data property of an EventGridEvent for a +Microsoft.Media.JobCanceled event. +*/ + #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." + model MediaJobCanceledEventData extends MediaJobStateChangeEventData { + /** Gets the Job outputs. */ + outputs?: MediaJobOutput[]; + } + + /** +Job error state event data. Schema of the data property of an EventGridEvent +for a Microsoft.Media.JobErrored event. +*/ + #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." + model MediaJobErroredEventData extends MediaJobStateChangeEventData { + /** Gets the Job outputs. */ + outputs?: MediaJobOutput[]; + } + + /** +Job output canceled event data. Schema of the data property of an +EventGridEvent for a Microsoft.Media.JobOutputCanceled event. +*/ + #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." + model MediaJobOutputCanceledEventData + extends MediaJobOutputStateChangeEventData {} + + /** +Job output canceling event data. Schema of the data property of an +EventGridEvent for a Microsoft.Media.JobOutputCanceling event. +*/ + #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." + model MediaJobOutputCancelingEventData + extends MediaJobOutputStateChangeEventData {} + + /** +Job output error event data. Schema of the data property of an EventGridEvent +for a Microsoft.Media.JobOutputErrored event. +*/ + #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." + model MediaJobOutputErroredEventData + extends MediaJobOutputStateChangeEventData {} + + /** +Job output finished event data. Schema of the data property of an +EventGridEvent for a Microsoft.Media.JobOutputFinished event. +*/ + #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." + model MediaJobOutputFinishedEventData + extends MediaJobOutputStateChangeEventData {} + + /** +Job output processing event data. Schema of the data property of an +EventGridEvent for a Microsoft.Media.JobOutputProcessing event. +*/ + #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." + model MediaJobOutputProcessingEventData + extends MediaJobOutputStateChangeEventData {} + + /** +Job output scheduled event data. Schema of the data property of an +EventGridEvent for a Microsoft.Media.JobOutputScheduled event. +*/ + #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." + model MediaJobOutputScheduledEventData + extends MediaJobOutputStateChangeEventData {} + + /** Encoder connect event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventEncoderConnected event. */ + model MediaLiveEventEncoderConnectedEventData { + ...MediaLiveEventConnectionBaseData; + } + + /** Encoder connection rejected event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventConnectionRejected event. */ + model MediaLiveEventConnectionRejectedEventData { + ...MediaLiveEventConnectionBaseData; + + /** Gets the result code. */ + resultCode?: string; + } + + /** Encoder disconnected event data. Schema of the Data property of an EventGridEvent for a Microsoft.Media.LiveEventEncoderDisconnected event. */ + model MediaLiveEventEncoderDisconnectedEventData { + ...MediaLiveEventConnectionBaseData; + + /** Gets the result code. */ + resultCode?: string; + } + + /** Encoder connect event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIncomingStreamReceived event. */ + model MediaLiveEventIncomingStreamReceivedEventData { + /** Gets the ingest URL provided by the live event. */ + @visibility("read") + ingestUrl?: string; + + /** Gets the type of the track (Audio / Video). */ + @visibility("read") + trackType?: string; + + /** Gets the track name. */ + @visibility("read") + trackName?: string; + + /** Gets the bitrate of the track. */ + @visibility("read") + bitrate?: int64; + + /** Gets the remote IP. */ + @visibility("read") + encoderIp?: string; + + /** Gets the remote port. */ + @visibility("read") + encoderPort?: string; + + /** Gets the first timestamp of the data chunk received. */ + @visibility("read") + timestamp?: string; + + /** Gets the duration of the first data chunk. */ + @visibility("read") + duration?: string; + + /** Gets the timescale in which timestamp is represented. */ + @visibility("read") + timescale?: string; + } + + /** Incoming streams out of sync event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIncomingStreamsOutOfSync event. */ + model MediaLiveEventIncomingStreamsOutOfSyncEventData { + /** Gets the minimum last timestamp received. */ + @visibility("read") + minLastTimestamp?: string; + + /** Gets the type of stream with minimum last timestamp. */ + @visibility("read") + typeOfStreamWithMinLastTimestamp?: string; + + /** Gets the maximum timestamp among all the tracks (audio or video). */ + @visibility("read") + maxLastTimestamp?: string; + + /** Gets the type of stream with maximum last timestamp. */ + @visibility("read") + typeOfStreamWithMaxLastTimestamp?: string; + + /** Gets the timescale in which \"MinLastTimestamp\" is represented. */ + @visibility("read") + timescaleOfMinLastTimestamp?: string; + + /** Gets the timescale in which \"MaxLastTimestamp\" is represented. */ + @visibility("read") + timescaleOfMaxLastTimestamp?: string; + } + + /** Incoming video stream out of sync event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIncomingVideoStreamsOutOfSync event. */ + model MediaLiveEventIncomingVideoStreamsOutOfSyncEventData { + /** Gets the first timestamp received for one of the quality levels. */ + @visibility("read") + firstTimestamp?: string; + + /** Gets the duration of the data chunk with first timestamp. */ + @visibility("read") + firstDuration?: string; + + /** Gets the timestamp received for some other quality levels. */ + @visibility("read") + secondTimestamp?: string; + + /** Gets the duration of the data chunk with second timestamp. */ + @visibility("read") + secondDuration?: string; + + /** Gets the timescale in which both the timestamps and durations are represented. */ + @visibility("read") + timescale?: string; + } + + /** Ingest fragment dropped event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIncomingDataChunkDropped event. */ + model MediaLiveEventIncomingDataChunkDroppedEventData { + /** Gets the timestamp of the data chunk dropped. */ + @visibility("read") + timestamp?: string; + + /** Gets the type of the track (Audio / Video). */ + @visibility("read") + trackType?: string; + + /** Gets the bitrate of the track. */ + @visibility("read") + bitrate?: int64; + + /** Gets the timescale of the Timestamp. */ + @visibility + timescale?: string; + + /** Gets the result code for fragment drop operation. */ + @visibility("read") + resultCode?: string; + + /** Gets the name of the track for which fragment is dropped. */ + @visibility("read") + trackName?: string; + } + + /** Ingest heartbeat event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIngestHeartbeat event. */ + model MediaLiveEventIngestHeartbeatEventData { + /** Gets the type of the track (Audio / Video). */ + @visibility("read") + trackType?: string; + + /** Gets the track name. */ + @visibility("read") + trackName?: string; + + /** Gets the Live Transcription language. */ + @visibility("read") + transcriptionLanguage?: string; + + /** Gets the Live Transcription state. */ + @visibility("read") + transcriptionState?: string; + + /** Gets the bitrate of the track. */ + @visibility("read") + bitrate?: int64; + + /** Gets the incoming bitrate. */ + @visibility("read") + incomingBitrate?: int64; + + /** Gets the track ingest drift value. */ + @visibility("read") + ingestDriftValue?: string; + + /** Gets the arrival UTC time of the last fragment. */ + @visibility("read") + lastFragmentArrivalTime?: string; + + /** Gets the last timestamp. */ + @visibility("read") + lastTimestamp?: string; + + /** Gets the timescale of the last timestamp. */ + @visibility("read") + timescale?: string; + + /** Gets the fragment Overlap count. */ + @visibility("read") + overlapCount?: int64; + + /** Gets the fragment Discontinuity count. */ + @visibility("read") + discontinuityCount?: int64; + + /** Gets Non increasing count. */ + @visibility("read") + nonincreasingCount?: int64; + + /** Gets a value indicating whether unexpected bitrate is present or not. */ + @visibility("read") + unexpectedBitrate?: boolean; + + /** Gets the state of the live event. */ + @visibility("read") + state?: string; + + /** Gets a value indicating whether preview is healthy or not. */ + @visibility("read") + healthy?: boolean; + } + + /** Ingest track discontinuity detected event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventTrackDiscontinuityDetected event. */ + model MediaLiveEventTrackDiscontinuityDetectedEventData { + /** Gets the type of the track (Audio / Video). */ + @visibility("read") + trackType?: string; + + /** Gets the track name. */ + @visibility("read") + trackName?: string; + + /** Gets the bitrate. */ + @visibility("read") + bitrate?: int64; + + /** Gets the timestamp of the previous fragment. */ + @visibility("read") + previousTimestamp?: string; + + /** Gets the timestamp of the current fragment. */ + @visibility("read") + newTimestamp?: string; + + /** Gets the timescale in which both timestamps and discontinuity gap are represented. */ + @visibility("read") + timescale?: string; + + /** Gets the discontinuity gap between PreviousTimestamp and NewTimestamp. */ + @visibility("read") + discontinuityGap?: string; + } + + /** Channel Archive heartbeat event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventChannelArchiveHeartbeat event. */ + model MediaLiveEventChannelArchiveHeartbeatEventData { + /** Gets the channel latency in ms. */ + @visibility("read") + channelLatencyMs: string; + + /** Gets the latency result code. */ + @visibility("read") + latencyResultCode: string; + } + + alias MediaLiveEventConnectionBaseData = { + /** Gets the ingest URL provided by the live event. */ + @visibility("read") + ingestUrl?: string; + + /** Gets the stream Id. */ + @visibility("read") + streamId?: string; + + /** Gets the remote IP. */ + @visibility("read") + encoderIp?: string; + + /** Gets the remote port. */ + @visibility("read") + encoderPort?: string; + }; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/PolicyInsights.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/PolicyInsights.tsp new file mode 100644 index 0000000000000..0422c875de2ff --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/PolicyInsights.tsp @@ -0,0 +1,40 @@ +/** Describes the schema of the Azure Policy events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents { + /** Schema of the Data property of an EventGridEvent for a Microsoft.PolicyInsights.PolicyStateCreated event. */ + model PolicyInsightsPolicyStateCreatedEventData { + ...PolicyInsightsBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.PolicyInsights.PolicyStateChanged event. */ + model PolicyInsightsPolicyStateChangedEventData { + ...PolicyInsightsBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.PolicyInsights.PolicyStateDeleted event. */ + model PolicyInsightsPolicyStateDeletedEventData { + ...PolicyInsightsBaseEventData; + } + + alias PolicyInsightsBaseEventData = { + /** The time that the resource was scanned by Azure Policy in the Universal ISO 8601 DateTime format yyyy-MM-ddTHH:mm:ss.fffffffZ. */ + timestamp?: utcDateTime; + + /** The resource ID of the policy assignment. */ + policyAssignmentId?: string; + + /** The resource ID of the policy definition. */ + policyDefinitionId?: string; + + /** The reference ID for the policy definition inside the initiative definition, if the policy assignment is for an initiative. May be empty. */ + policyDefinitionReferenceId?: string; + + /** The compliance state of the resource with respect to the policy assignment. */ + complianceState?: string; + + /** The subscription ID of the resource. */ + subscriptionId?: string; + + /** The compliance reason code. May be empty. */ + complianceReasonCode?: string; + }; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/README.md b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/README.md new file mode 100644 index 0000000000000..e4b570b824e25 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/README.md @@ -0,0 +1,46 @@ +# EventGrid Typespec Guide + +## Guidelines for defining a new event in Typespec + + **_NOTE:_** New events must not be delivered to Event Grid production endpoints until the events have been reviewed with the Azure SDK Architecture board and the PR is merged into main. Once the PR is merged to main, the events are considered GA regardless of whether docs list them as being in preview. This is because customers cannot control which version of events they consume - it is entirely up to the service publishing the events. Any breaking changes to events would need to be implemented as a new event type. Full details can be found in the [Azure Breaking Changes Policy](http://aka.ms/AzBreakingChangesPolicy/), Section 4. + +In order to automate the mapping of event definition with event type, please follow the guidelines below when adding new events to your typespec: +- The name of a new event definition should have `EventData` suffix. For e.g. `AcsChatMessageReceivedEventData`. +- The description of the new event should include the event type. This is the `eventType` name in an `EventGridEvent` or `type` name in `CloudEvent`. For e.g. `"Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageReceived event."` Here `Microsoft.Communication.ChatMessageReceived` is the event name. If your event is in preview, you may add the word preview: `"Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageReceived preview event."` +- Make sure to add add your service's SystemEvent CloudEvent Schema examples under `samples/stable/2024-01-01/YOUR_SERVICE_NAME/`. + +### Write in Typespec + +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: +~~~ 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; +} +~~~ + +Adding `@usage` and `@access` to `client.tsp`: +~~~ markdown + +@@usage(EventGrid.AcsChatMessageReceivedEventData, Usage.output); +@@access(EventGrid.AcsChatMessageReceivedEventData, Access.public) +~~~ + +# How To Run + +Within Azure.Messaging.EventGrid.SystemEvents: + + +To generate the EventGrid SystemEvents from TypeSpec: + +With `Azure.Messaging.EventGrid.SystemEvents` as your root directory: + + `tsp compile client.tsp --emit YOUR_EMITTER` + +To generate the swagger file YOUR_EMITTER would be @azure-tools/typespec-autorest. \ No newline at end of file diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/RedisCache.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/RedisCache.tsp new file mode 100644 index 0000000000000..23b11d1a29c0b --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/RedisCache.tsp @@ -0,0 +1,35 @@ +/** Describes the schema of the Redis Cache events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents { + alias RedisBaseEventData = { + /** The time at which the event occurred. */ + timestamp?: utcDateTime; + + /** The name of this event. */ + name?: string; + + /** The status of this event. Failed or succeeded */ + status?: string; + }; + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Cache.PatchingCompleted event. */ + model RedisPatchingCompletedEventData { + ...RedisBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Cache.ScalingCompleted event. */ + model RedisScalingCompletedEventData { + ...RedisBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Cache.ExportRDBCompleted event. */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after service swagger." + model RedisExportRDBCompletedEventData { + ...RedisBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Cache.ImportRDBCompleted event. */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after service swagger." + model RedisImportRDBCompletedEventData { + ...RedisBaseEventData; + } +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ResourceNotifications.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ResourceNotifications.tsp new file mode 100644 index 0000000000000..5ce0ff6e35a4b --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ResourceNotifications.tsp @@ -0,0 +1,111 @@ +/** +Describes the schema of the Health Resources events published to Azure Event +Grid. This corresponds to the Data property of an EventGridEvent. +*/ +namespace Microsoft.EventGrid.SystemEvents; + +/** +Schema of the Data property of an EventGridEvent for a +Microsoft.ResourceNotifications.HealthResources.AvailabilityStatusChanged +event. +*/ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model ResourceNotificationsHealthResourcesAvailabilityStatusChangedEventData + extends ResourceNotificationsResourceUpdatedEventData {} + +/** Describes the schema of the common properties across all ARN system topic events */ +model ResourceNotificationsResourceUpdatedEventData { + /** resourceInfo details for update event */ + resourceInfo?: ResourceNotificationsResourceUpdatedDetails; + + /** details about operational info */ + operationalInfo?: ResourceNotificationsOperationalDetails; + + /** api version of the resource properties bag */ + apiVersion?: string; +} + +/** +Describes the schema of the properties under resource info which are common +across all ARN system topic events +*/ +model ResourceNotificationsResourceUpdatedDetails { + /** id of the resource for which the event is being emitted */ + id?: string; + + /** name of the resource for which the event is being emitted */ + name?: string; + + /** the type of the resource for which the event is being emitted */ + 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; + + /** 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; +} + +/** details of operational info */ +model ResourceNotificationsOperationalDetails { + /** Date and Time when resource was updated */ + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + resourceEventTime?: utcDateTime; +} + +/** +Schema of the Data property of an EventGridEvent for a +Microsoft.ResourceNotifications.HealthResources.ResourceAnnotated event. +*/ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model ResourceNotificationsHealthResourcesAnnotatedEventData + extends ResourceNotificationsResourceUpdatedEventData {} + +// Resources.json + +/** +Schema of the Data property of an EventGridEvent for a +Microsoft.ResourceNotifications.Resources.CreatedOrUpdated event. +*/ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model ResourceNotificationsResourceManagementCreatedOrUpdatedEventData + extends ResourceNotificationsResourceUpdatedEventData {} + +/** +Schema of the Data property of an EventGridEvent for a +Microsoft.ResourceNotifications.Resources.Deleted event. +*/ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "Maintain compatibility with existing models." +model ResourceNotificationsResourceManagementDeletedEventData + extends ResourceNotificationsResourceDeletedEventData {} + +/** +Describes the schema of the common properties across all ARN system topic +delete events +*/ +model ResourceNotificationsResourceDeletedEventData { + /** resourceInfo details for delete event */ + resourceInfo?: ResourceNotificationsResourceDeletedDetails; + + /** details about operational info */ + operationalInfo?: ResourceNotificationsOperationalDetails; +} + +/** +Describes the schema of the properties under resource info which are common +across all ARN system topic delete events +*/ +model ResourceNotificationsResourceDeletedDetails { + /** id of the resource for which the event is being emitted */ + id?: string; + + /** name of the resource for which the event is being emitted */ + name?: string; + + /** the type of the resource for which the event is being emitted */ + type?: string; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Resources.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Resources.tsp new file mode 100644 index 0000000000000..489bbfb670d9e --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Resources.tsp @@ -0,0 +1,109 @@ +/** Describes the schema of the Azure resource events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents { + /** Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceWriteSuccess event. This is raised when a resource create or update operation succeeds. */ + model ResourceWriteSuccessData { + ...ResourceBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceWriteFailure event. This is raised when a resource create or update operation fails. */ + model ResourceWriteFailureData { + ...ResourceBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceWriteCancel event. This is raised when a resource create or update operation is canceled. */ + model ResourceWriteCancelData { + ...ResourceBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceDeleteSuccess event. This is raised when a resource delete operation succeeds. */ + model ResourceDeleteSuccessData { + ...ResourceBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceDeleteFailure event. This is raised when a resource delete operation fails. */ + model ResourceDeleteFailureData { + ...ResourceBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceDeleteCancel event. This is raised when a resource delete operation is canceled. */ + model ResourceDeleteCancelData { + ...ResourceBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceActionSuccess event. This is raised when a resource action operation succeeds. */ + model ResourceActionSuccessData { + ...ResourceBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceActionFailure event. This is raised when a resource action operation fails. */ + model ResourceActionFailureData { + ...ResourceBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceActionCancel event. This is raised when a resource action operation is canceled. */ + model ResourceActionCancelData { + ...ResourceBaseEventData; + } + + /** The details of the HTTP request. */ + model ResourceHttpRequest { + /** The client request ID. */ + clientRequestId?: string; + + /** The client IP address. */ + clientIpAddress?: string; + + /** The request method. */ + method?: string; + + /** The url used in the request. */ + url?: string; + } + + /** The details of the authorization for the resource. */ + model ResourceAuthorization { + /** The scope of the authorization. */ + scope?: string; + + /** The action being requested. */ + action?: string; + + /** The evidence for the authorization. */ + evidence?: Record; + } + + alias ResourceBaseEventData = { + /** The tenant ID of the resource. */ + tenantId?: string; + + /** The subscription ID of the resource. */ + subscriptionId?: string; + + /** The resource group of the resource. */ + resourceGroup?: string; + + /** The resource provider performing the operation. */ + resourceProvider?: string; + + /** The URI of the resource in the operation. */ + resourceUri?: string; + + /** The operation that was performed. */ + operationName?: string; + + /** The status of the operation. */ + status?: string; + + /** The requested authorization for the operation. */ + authorization?: ResourceAuthorization; + + /** The properties of the claims. */ + claims?: Record; + + /** An operation ID used for troubleshooting. */ + correlationId?: string; + + /** The details of the operation. */ + httpRequest?: ResourceHttpRequest; + }; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ServiceBus.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ServiceBus.tsp new file mode 100644 index 0000000000000..0167548c82fe8 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/ServiceBus.tsp @@ -0,0 +1,42 @@ +/** Describes the schema of the Azure ServiceBus Messaging events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents { + /** Schema of the Data property of an EventGridEvent for a Microsoft.ServiceBus.ActiveMessagesAvailableWithNoListeners event. */ + model ServiceBusActiveMessagesAvailableWithNoListenersEventData { + ...ServiceBusBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.ServiceBus.DeadletterMessagesAvailableWithNoListeners event. */ + model ServiceBusDeadletterMessagesAvailableWithNoListenersEventData { + ...ServiceBusBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.ServiceBus.ActiveMessagesAvailablePeriodicNotifications event. */ + model ServiceBusActiveMessagesAvailablePeriodicNotificationsEventData { + ...ServiceBusBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.ServiceBus.DeadletterMessagesAvailablePeriodicNotifications event. */ + model ServiceBusDeadletterMessagesAvailablePeriodicNotificationsEventData { + ...ServiceBusBaseEventData; + } + + alias ServiceBusBaseEventData = { + /** The namespace name of the Microsoft.ServiceBus resource. */ + namespaceName?: string; + + /** The endpoint of the Microsoft.ServiceBus resource. */ + requestUri?: string; + + /** The entity type of the Microsoft.ServiceBus resource. Could be one of 'queue' or 'subscriber'. */ + entityType?: string; + + /** The name of the Microsoft.ServiceBus queue. If the entity type is of type 'subscriber', then this value will be null. */ + queueName?: string; + + /** The name of the Microsoft.ServiceBus topic. If the entity type is of type 'queue', then this value will be null. */ + topicName?: string; + + /** The name of the Microsoft.ServiceBus topic's subscription. If the entity type is of type 'queue', then this value will be null. */ + subscriptionName?: string; + }; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/SignalRService.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/SignalRService.tsp new file mode 100644 index 0000000000000..ac2f698c5f70c --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/SignalRService.tsp @@ -0,0 +1,32 @@ +/** Describes the schema of the Azure SignalR Service events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +#suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after service swagger." +namespace Microsoft.EventGrid.SystemEvents { + /** Schema of the Data property of an EventGridEvent for a Microsoft.SignalRService.ClientConnectionConnected event. */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after service swagger." + model SignalRServiceClientConnectionConnectedEventData { + ...SignalRServiceBaseEventdata; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.SignalRService.ClientConnectionDisconnected event. */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after service swagger." + model SignalRServiceClientConnectionDisconnectedEventData { + ...SignalRServiceBaseEventdata; + + /** The message of error that cause the client connection disconnected. */ + errorMessage?: string; + } + + alias SignalRServiceBaseEventdata = { + /** The time at which the event occurred. */ + timestamp?: utcDateTime; + + /** The hub of connected client connection. */ + hubName?: string; + + /** The connection Id of connected client connection. */ + connectionId?: string; + + /** The user Id of connected client connection. */ + userId?: string; + }; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Storage.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Storage.tsp new file mode 100644 index 0000000000000..2d8e72c4db762 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Storage.tsp @@ -0,0 +1,351 @@ +/** Describes the schema of the Azure Storage events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents { + /** Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobCreated event. */ + model StorageBlobCreatedEventData { + /** The name of the API/operation that triggered this event. */ + api?: string; + + /** A request id provided by the client of the storage API operation that triggered this event. */ + clientRequestId?: string; + + /** The request id generated by the storage service for the storage API operation that triggered this event. */ + requestId?: string; + + /** The etag of the blob at the time this event was triggered. */ + eTag?: string; + + /** The content type of the blob. This is the same as what would be returned in the Content-Type header from the blob. */ + contentType?: string; + + /** The size of the blob in bytes. This is the same as what would be returned in the Content-Length header from the blob. */ + contentLength?: int64; + + /** The offset of the blob in bytes. */ + contentOffset?: int64; + + /** The type of blob. */ + blobType?: string; + + /** The path to the blob. */ + url?: string; + + /** An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name. */ + sequencer?: string; + + ...StorageBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobDeleted event. */ + model StorageBlobDeletedEventData { + /** The name of the API/operation that triggered this event. */ + api?: string; + + /** A request id provided by the client of the storage API operation that triggered this event. */ + clientRequestId?: string; + + /** The request id generated by the storage service for the storage API operation that triggered this event. */ + requestId?: string; + + /** The content type of the blob. This is the same as what would be returned in the Content-Type header from the blob. */ + contentType?: string; + + /** The type of blob. */ + blobType?: string; + + /** The path to the blob. */ + url?: string; + + /** An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name. */ + sequencer?: string; + + ...StorageBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Storage.DirectoryCreated event. */ + model StorageDirectoryCreatedEventData { + /** The name of the API/operation that triggered this event. */ + api?: string; + + /** A request id provided by the client of the storage API operation that triggered this event. */ + clientRequestId?: string; + + /** The request id generated by the storage service for the storage API operation that triggered this event. */ + requestId?: string; + + /** The etag of the directory at the time this event was triggered. */ + eTag?: string; + + /** The path to the directory. */ + url?: string; + + /** An opaque string value representing the logical sequence of events for any particular directory name. Users can use standard string comparison to understand the relative sequence of two events on the same directory name. */ + sequencer?: string; + + ...StorageBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Storage.DirectoryDeleted event. */ + model StorageDirectoryDeletedEventData { + /** The name of the API/operation that triggered this event. */ + api?: string; + + /** A request id provided by the client of the storage API operation that triggered this event. */ + clientRequestId?: string; + + /** The request id generated by the storage service for the storage API operation that triggered this event. */ + requestId?: string; + + /** The path to the deleted directory. */ + url?: string; + + /** Is this event for a recursive delete operation. */ + recursive?: string; + + /** An opaque string value representing the logical sequence of events for any particular directory name. Users can use standard string comparison to understand the relative sequence of two events on the same directory name. */ + sequencer?: string; + + ...StorageBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobRenamed event. */ + model StorageBlobRenamedEventData { + /** The name of the API/operation that triggered this event. */ + api?: string; + + /** A request id provided by the client of the storage API operation that triggered this event. */ + clientRequestId?: string; + + /** The request id generated by the storage service for the storage API operation that triggered this event. */ + requestId?: string; + + /** The path to the blob that was renamed. */ + sourceUrl?: string; + + /** The new path to the blob after the rename operation. */ + destinationUrl?: string; + + /** An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name. */ + sequencer?: string; + + ...StorageBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Storage.DirectoryRenamed event. */ + model StorageDirectoryRenamedEventData { + /** The name of the API/operation that triggered this event. */ + api?: string; + + /** A request id provided by the client of the storage API operation that triggered this event. */ + clientRequestId?: string; + + /** The request id generated by the storage service for the storage API operation that triggered this event. */ + requestId?: string; + + /** The path to the directory that was renamed. */ + sourceUrl?: string; + + /** The new path to the directory after the rename operation. */ + destinationUrl?: string; + + /** An opaque string value representing the logical sequence of events for any particular directory name. Users can use standard string comparison to understand the relative sequence of two events on the same directory name. */ + sequencer?: string; + + ...StorageBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Storage.LifecyclePolicyCompleted event. */ + model StorageLifecyclePolicyCompletedEventData { + /** The time the policy task was scheduled. */ + scheduleTime?: string; + + /** Execution statistics of a specific policy action in a Blob Management cycle. */ + deleteSummary?: StorageLifecyclePolicyActionSummaryDetail; + + /** Execution statistics of a specific policy action in a Blob Management cycle. */ + tierToCoolSummary?: StorageLifecyclePolicyActionSummaryDetail; + + /** Execution statistics of a specific policy action in a Blob Management cycle. */ + tierToArchiveSummary?: StorageLifecyclePolicyActionSummaryDetail; + } + + /** Execution statistics of a specific policy action in a Blob Management cycle. */ + model StorageLifecyclePolicyActionSummaryDetail { + /** Total number of objects to be acted on by this action. */ + totalObjectsCount?: int64; + + /** Number of success operations of this action. */ + successCount?: int64; + + /** Error messages of this action if any. */ + errorList?: string; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobTierChanged event. */ + model StorageBlobTierChangedEventData { + /** The name of the API/operation that triggered this event. */ + api?: string; + + /** A request id provided by the client of the storage API operation that triggered this event. */ + clientRequestId?: string; + + /** The request id generated by the storage service for the storage API operation that triggered this event. */ + requestId?: string; + + /** The content type of the blob. This is the same as what would be returned in the Content-Type header from the blob. */ + contentType?: string; + + /** The size of the blob in bytes. This is the same as what would be returned in the Content-Length header from the blob. */ + contentLength?: int64; + + /** The type of blob. */ + blobType?: string; + + /** The path to the blob. */ + url?: string; + + /** An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name. */ + sequencer?: string; + + ...StorageBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Storage.AsyncOperationInitiated event. */ + model StorageAsyncOperationInitiatedEventData { + /** The name of the API/operation that triggered this event. */ + api?: string; + + /** A request id provided by the client of the storage API operation that triggered this event. */ + clientRequestId?: string; + + /** The request id generated by the storage service for the storage API operation that triggered this event. */ + requestId?: string; + + /** The content type of the blob. This is the same as what would be returned in the Content-Type header from the blob. */ + contentType?: string; + + /** The size of the blob in bytes. This is the same as what would be returned in the Content-Length header from the blob. */ + contentLength?: int64; + + /** The type of blob. */ + blobType?: string; + + /** The path to the blob. */ + url?: string; + + /** An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name. */ + sequencer?: string; + + ...StorageBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for an Microsoft.Storage.BlobInventoryPolicyCompleted event. */ + model StorageBlobInventoryPolicyCompletedEventData { + /** The time at which inventory policy was scheduled. */ + scheduleDateTime?: utcDateTime; + + /** The account name for which inventory policy is registered. */ + accountName?: string; + + /** The rule name for inventory policy. */ + ruleName?: string; + + /** The status of inventory run, it can be Succeeded/PartiallySucceeded/Failed. */ + policyRunStatus?: string; + + /** The status message for inventory run. */ + policyRunStatusMessage?: string; + + /** The policy run id for inventory run. */ + policyRunId?: string; + + /** The blob URL for manifest file for inventory run. */ + manifestBlobUrl?: string; + } + + /** Schema of the Data property of an EventGridEvent for an Microsoft.Storage.StorageTaskCompleted event. */ + model StorageTaskCompletedEventData { + /** The status for a storage task. */ + status?: StorageTaskCompletedStatus; + + /** The time at which a storage task was completed. */ + completedDateTime?: utcDateTime; + + /** The execution id for a storage task. */ + taskExecutionId?: string; + + /** The task name for a storage task. */ + taskName?: string; + + /** The summary report blob url for a storage task */ + summaryReportBlobUrl?: url; + } + + /** Schema of the Data property of an EventGridEvent for an Microsoft.Storage.StorageTaskQueued event. */ + model StorageTaskQueuedEventData { + /** The time at which a storage task was queued. */ + queuedDateTime?: utcDateTime; + + /** The execution id for a storage task. */ + taskExecutionId?: string; + } + + /** Schema of the Data property of an EventGridEvent for an Microsoft.Storage.StorageTaskAssignmentQueued event. */ + model StorageTaskAssignmentQueuedEventData { + /** The time at which a storage task was queued. */ + // @encode("ISO8601") + queuedDateTime?: utcDateTime; + + /** The execution id for a storage task. */ + taskExecutionId?: string; + } + + /** Schema of the Data property of an EventGridEvent for an Microsoft.Storage.StorageTaskAssignmentCompleted event. */ + model StorageTaskAssignmentCompletedEventData { + /** The status for a storage task. */ + status?: StorageTaskAssignmentCompletedStatus; + + /** The time at which a storage task was completed. */ + // @encode("ISO8601") + completedDateTime?: utcDateTime; + + /** The execution id for a storage task. */ + taskExecutionId?: string; + + /** The task name for a storage task. */ + taskName?: string; + + /** The summary report blob url for a storage task */ + summaryReportBlobUrl?: url; + } + + /** The status for a storage task. */ + union StorageTaskAssignmentCompletedStatus { + /** Succeeded */ + "Succeeded", + + /** Failed */ + "Failed", + + string, + } + + /** The status for a storage task. */ + union StorageTaskCompletedStatus { + /** Succeeded */ + "Succeeded", + + /** Failed */ + "Failed", + + string, + } + + alias StorageBaseEventData = { + /** The identity of the requester that triggered this event. */ + identity?: string; + + /** For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers. */ + #suppress "@azure-tools/typespec-azure-core/bad-record-type" "Type is Object in swagger" + storageDiagnostics?: Record; + }; +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Web.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Web.tsp new file mode 100644 index 0000000000000..367113ce36dc3 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/Web.tsp @@ -0,0 +1,212 @@ +/** Describes the schema of the Azure App Service events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent. */ +namespace Microsoft.EventGrid.SystemEvents { + // /** sku of app service plan. */ + /** Detail of action on the app. */ + model AppEventTypeDetail { + /** Type of action of the operation. */ + action?: AppAction; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Web.AppUpdated event. */ + model WebAppUpdatedEventData { + ...WebAppBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Web.BackupOperationStarted event. */ + model WebBackupOperationStartedEventData { + ...WebAppBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Web.BackupOperationCompleted event. */ + model WebBackupOperationCompletedEventData { + ...WebAppBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Web.BackupOperationFailed event. */ + model WebBackupOperationFailedEventData { + ...WebAppBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Web.RestoreOperationStarted event. */ + model WebRestoreOperationStartedEventData { + ...WebAppBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Web.RestoreOperationCompleted event. */ + model WebRestoreOperationCompletedEventData { + ...WebAppBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Web.RestoreOperationFailed event. */ + model WebRestoreOperationFailedEventData { + ...WebAppBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapStarted event. */ + model WebSlotSwapStartedEventData { + ...WebAppBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapCompleted event. */ + model WebSlotSwapCompletedEventData { + ...WebAppBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapFailed event. */ + model WebSlotSwapFailedEventData { + ...WebAppBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapWithPreviewStarted event. */ + model WebSlotSwapWithPreviewStartedEventData { + ...WebAppBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapWithPreviewCancelled event. */ + model WebSlotSwapWithPreviewCancelledEventData { + ...WebAppBaseEventData; + } + + /** Schema of the Data property of an EventGridEvent for a Microsoft.Web.AppServicePlanUpdated event. */ + model WebAppServicePlanUpdatedEventData { + /** Detail of action on the app service plan. */ + appServicePlanEventTypeDetail?: AppServicePlanEventTypeDetail; + + /** sku of app service plan. */ + sku?: WebAppServicePlanUpdatedEventDataSku; + + /** name of the app service plan that had this event. */ + name?: string; + + /** The client request id generated by the app service for the app service plan API operation that triggered this event. */ + clientRequestId?: string; + + /** The correlation request id generated by the app service for the app service plan API operation that triggered this event. */ + correlationRequestId?: string; + + /** The request id generated by the app service for the app service plan API operation that triggered this event. */ + requestId?: string; + + /** HTTP request URL of this operation. */ + address?: string; + + /** HTTP verb of this operation. */ + verb?: string; + } + + /** Type of action of the operation */ + union AppAction { + /** Web app was restarted. */ + "Restarted", + + /** Web app was stopped. */ + "Stopped", + + /** There was an operation to change app setting on the web app. */ + "ChangedAppSettings", + + /** The job has started. */ + "Started", + + /** The job has completed. */ + "Completed", + + /** The job has failed to complete. */ + "Failed", + + string, + } + + /** Kind of environment where app service plan is. */ + union StampKind { + /** App Service Plan is running on a public stamp. */ + "Public", + + /** App Service Plan is running on an App Service Environment V1. */ + "AseV1", + + /** App Service Plan is running on an App Service Environment V2. */ + "AseV2", + + string, + } + + /** Type of action on the app service plan. */ + union AppServicePlanAction { + /** App Service plan is being updated. */ + "Updated", + + string, + } + + /** Detail of action on the app service plan. */ + model AppServicePlanEventTypeDetail { + /** Kind of environment where app service plan is. */ + stampKind?: StampKind; + + /** Type of action on the app service plan. */ + action?: AppServicePlanAction; + + /** Asynchronous operation status of the operation on the app service plan. */ + status?: AsyncStatus; + } + + /** Asynchronous operation status of the operation on the app service plan. */ + union AsyncStatus { + /** Async operation has started. */ + "Started", + + /** Async operation has completed. */ + "Completed", + + /** Async operation failed to complete. */ + "Failed", + + string, + } + + alias WebAppBaseEventData = { + /** Detail of action on the app. */ + appEventTypeDetail?: AppEventTypeDetail; + + /** name of the web site that had this event. */ + name?: string; + + /** The client request id generated by the app service for the site API operation that triggered this event. */ + clientRequestId?: string; + + /** The correlation request id generated by the app service for the site API operation that triggered this event. */ + correlationRequestId?: string; + + /** The request id generated by the app service for the site API operation that triggered this event. */ + requestId?: string; + + /** HTTP request URL of this operation. */ + address?: string; + + /** HTTP verb of this operation. */ + verb?: string; + }; + + /** sku of app service plan. */ + model WebAppServicePlanUpdatedEventDataSku { + /** name of app service plan sku. */ + name?: string; + + /** tier of app service plan sku. */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after original service swagger." + Tier?: string; + + /** size of app service plan sku. */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after original service swagger." + Size?: string; + + /** family of app service plan sku. */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after original service swagger." + Family?: string; + + /** capacity of app service plan sku. */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "Modeling after original service swagger." + Capacity?: string; + } +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/client.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/client.tsp new file mode 100644 index 0000000000000..9efe25648d95b --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/client.tsp @@ -0,0 +1,1695 @@ +import "@azure-tools/typespec-client-generator-core"; +import "@typespec/versioning"; + +import "./main.tsp"; + +using Azure.ClientGenerator.Core; + +// Models +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementUserCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementUserCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementUserUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementUserUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementUserDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementUserDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementSubscriptionCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementSubscriptionCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementSubscriptionUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementSubscriptionUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementSubscriptionDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementSubscriptionDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementProductCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementProductCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementProductUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementProductUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementProductDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementProductDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementApiCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementApiCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementApiUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementApiUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementApiDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementApiDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementApiReleaseCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementApiReleaseCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementApiReleaseUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementApiReleaseUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementApiReleaseDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementApiReleaseDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayHostnameConfigurationCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayHostnameConfigurationCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayHostnameConfigurationUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayHostnameConfigurationUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayHostnameConfigurationDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayHostnameConfigurationDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayCertificateAuthorityCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayCertificateAuthorityCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayCertificateAuthorityUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayCertificateAuthorityUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayCertificateAuthorityDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayCertificateAuthorityDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayApiAddedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayApiAddedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayApiRemovedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ApiManagementGatewayApiRemovedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AppConfigurationKeyValueModifiedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AppConfigurationKeyValueModifiedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AppConfigurationKeyValueDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AppConfigurationKeyValueDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AppConfigurationSnapshotEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AppConfigurationSnapshotEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AppConfigurationSnapshotCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AppConfigurationSnapshotCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AppConfigurationSnapshotModifiedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AppConfigurationSnapshotModifiedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AvsPrivateCloudUpdatingEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AvsPrivateCloudUpdatingEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AvsPrivateCloudUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AvsPrivateCloudUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AvsPrivateCloudFailedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AvsPrivateCloudFailedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AvsClusterCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AvsClusterCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AvsClusterDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AvsClusterDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AvsClusterUpdatingEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AvsClusterUpdatingEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AvsClusterUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AvsClusterUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AvsClusterFailedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AvsClusterFailedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AvsScriptExecutionFinishedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AvsScriptExecutionFinishedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AvsScriptExecutionCancelledEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AvsScriptExecutionCancelledEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AvsScriptExecutionFailedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AvsScriptExecutionFailedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AvsPrivateCloudEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AvsPrivateCloudEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AvsClusterEventData, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.AvsClusterEventData, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.AvsScriptExecutionEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AvsScriptExecutionEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsIncomingCallEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsIncomingCallEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsUserDisconnectedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsUserDisconnectedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatMessageReceivedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatMessageReceivedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatMessageReceivedInThreadEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatMessageReceivedInThreadEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatMessageEditedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatMessageEditedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatMessageEditedInThreadEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatMessageEditedInThreadEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatMessageDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatMessageDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatMessageDeletedInThreadEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatMessageDeletedInThreadEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatThreadCreatedWithUserEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatThreadCreatedWithUserEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatThreadCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatThreadCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatThreadWithUserDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatThreadWithUserDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatThreadDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatThreadDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatThreadPropertiesUpdatedPerUserEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatThreadPropertiesUpdatedPerUserEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatThreadPropertiesUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatThreadPropertiesUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatParticipantAddedToThreadWithUserEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatParticipantAddedToThreadWithUserEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatParticipantRemovedFromThreadWithUserEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatParticipantRemovedFromThreadWithUserEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatParticipantAddedToThreadEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatParticipantAddedToThreadEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatParticipantRemovedFromThreadEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatParticipantRemovedFromThreadEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsSmsDeliveryReportReceivedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsSmsDeliveryReportReceivedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsSmsReceivedEventData, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.AcsSmsReceivedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRecordingFileStatusUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRecordingFileStatusUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsEmailDeliveryReportReceivedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsEmailDeliveryReportReceivedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsEmailEngagementTrackingReportReceivedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsEmailEngagementTrackingReportReceivedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobCancelledEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobCancelledEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobClassificationFailedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobClassificationFailedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobClassifiedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobClassifiedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobClosedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobClosedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobExceptionTriggeredEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobExceptionTriggeredEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobQueuedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobQueuedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobReceivedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobReceivedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobSchedulingFailedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobSchedulingFailedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobUnassignedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobUnassignedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobWaitingForActivationEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobWaitingForActivationEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobWorkerSelectorsExpiredEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobWorkerSelectorsExpiredEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerDeregisteredEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerDeregisteredEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerOfferAcceptedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerOfferAcceptedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerOfferDeclinedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerOfferDeclinedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerOfferExpiredEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerOfferExpiredEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerOfferIssuedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerOfferIssuedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerOfferRevokedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerOfferRevokedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerRegisteredEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerRegisteredEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobEventData, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobEventData, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterEventData, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterEventData, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterChannelConfiguration, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterChannelConfiguration, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterQueueDetails, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterQueueDetails, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterCommunicationError, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterCommunicationError, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerSelector, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerSelector, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsEmailDeliveryReportStatusDetails, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsEmailDeliveryReportStatusDetails, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatThreadEventBaseProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatThreadEventBaseProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatThreadEventInThreadBaseProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatThreadEventInThreadBaseProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatMessageEventBaseProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatMessageEventBaseProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatMessageEventInThreadBaseProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatMessageEventInThreadBaseProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatEventInThreadBaseProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatEventInThreadBaseProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatEventBaseProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatEventBaseProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsChatThreadParticipantProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsChatThreadParticipantProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsSmsEventBaseProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsSmsEventBaseProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsSmsDeliveryAttemptProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsSmsDeliveryAttemptProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRecordingStorageInfoProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRecordingStorageInfoProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRecordingChunkInfoProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRecordingChunkInfoProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsIncomingCallCustomContext, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsIncomingCallCustomContext, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.CommunicationIdentifierModel, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.CommunicationIdentifierModel, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MicrosoftTeamsUserIdentifierModel, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MicrosoftTeamsUserIdentifierModel, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.PhoneNumberIdentifierModel, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.PhoneNumberIdentifierModel, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.CommunicationUserIdentifierModel, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.CommunicationUserIdentifierModel, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerRegistryImagePushedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerRegistryImagePushedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerRegistryImageDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerRegistryImageDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerRegistryChartPushedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerRegistryChartPushedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerRegistryChartDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerRegistryChartDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerRegistryEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerRegistryEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerRegistryArtifactEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerRegistryArtifactEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerRegistryEventTarget, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerRegistryEventTarget, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerRegistryArtifactEventTarget, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerRegistryArtifactEventTarget, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerRegistryEventRequest, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerRegistryEventRequest, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerRegistryEventActor, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerRegistryEventActor, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerRegistryEventSource, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerRegistryEventSource, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerRegistryEventConnectedRegistry, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerRegistryEventConnectedRegistry, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerServiceNewKubernetesVersionAvailableEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerServiceNewKubernetesVersionAvailableEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerServiceClusterSupportEndedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerServiceClusterSupportEndedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerServiceClusterSupportEndingEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerServiceClusterSupportEndingEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerServiceNodePoolRollingStartedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerServiceNodePoolRollingStartedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerServiceNodePoolRollingSucceededEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerServiceNodePoolRollingSucceededEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerServiceNodePoolRollingFailedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerServiceNodePoolRollingFailedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerServiceClusterSupportEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerServiceClusterSupportEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ContainerServiceNodePoolRollingEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ContainerServiceNodePoolRollingEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.DataBoxCopyStartedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.DataBoxCopyStartedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.DataBoxCopyCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.DataBoxCopyCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.DataBoxOrderCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.DataBoxOrderCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.SubscriptionValidationEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.SubscriptionValidationEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.SubscriptionValidationResponse, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.SubscriptionValidationResponse, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.SubscriptionDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.SubscriptionDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.EventGridMQTTClientCreatedOrUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.EventGridMQTTClientCreatedOrUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.EventGridMQTTClientEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.EventGridMQTTClientEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.EventGridMQTTClientDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.EventGridMQTTClientDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.EventGridMQTTClientSessionConnectedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.EventGridMQTTClientSessionConnectedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.EventGridMQTTClientSessionDisconnectedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.EventGridMQTTClientSessionDisconnectedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.EventHubCaptureFileCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.EventHubCaptureFileCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceType, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceType, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.HealthcareDicomImageCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.HealthcareDicomImageCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.HealthcareDicomImageDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.HealthcareDicomImageDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.HealthcareDicomImageUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.HealthcareDicomImageUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.DeviceLifeCycleEventProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.DeviceLifeCycleEventProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.DeviceTwinMetadata, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.DeviceTwinMetadata, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.DeviceTwinProperties, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.DeviceTwinProperties, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.DeviceTwinInfo, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.DeviceTwinInfo, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.DeviceConnectionStateEventProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.DeviceConnectionStateEventProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.DeviceTelemetryEventProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.DeviceTelemetryEventProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.DeviceConnectionStateEventInfo, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.DeviceConnectionStateEventInfo, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.IotHubDeviceCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.IotHubDeviceCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.IotHubDeviceDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.IotHubDeviceDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.IotHubDeviceConnectedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.IotHubDeviceConnectedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.IotHubDeviceDisconnectedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.IotHubDeviceDisconnectedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.IotHubDeviceTelemetryEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.IotHubDeviceTelemetryEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.DeviceTwinInfoX509Thumbprint, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.DeviceTwinInfoX509Thumbprint, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.DeviceTwinInfoProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.DeviceTwinInfoProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.KeyVaultCertificateNewVersionCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.KeyVaultCertificateNewVersionCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.KeyVaultCertificateNearExpiryEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.KeyVaultCertificateNearExpiryEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.KeyVaultCertificateExpiredEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.KeyVaultCertificateExpiredEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.KeyVaultKeyNewVersionCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.KeyVaultKeyNewVersionCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.KeyVaultKeyNearExpiryEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.KeyVaultKeyNearExpiryEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.KeyVaultKeyExpiredEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.KeyVaultKeyExpiredEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.KeyVaultSecretNewVersionCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.KeyVaultSecretNewVersionCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.KeyVaultSecretNearExpiryEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.KeyVaultSecretNearExpiryEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.KeyVaultSecretExpiredEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.KeyVaultSecretExpiredEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.KeyVaultVaultAccessPolicyChangedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.KeyVaultVaultAccessPolicyChangedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MachineLearningServicesModelRegisteredEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MachineLearningServicesModelRegisteredEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MachineLearningServicesModelDeployedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MachineLearningServicesModelDeployedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MachineLearningServicesRunCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MachineLearningServicesRunCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MachineLearningServicesDatasetDriftDetectedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MachineLearningServicesDatasetDriftDetectedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MachineLearningServicesRunStatusChangedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MachineLearningServicesRunStatusChangedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MapsGeofenceEnteredEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MapsGeofenceEnteredEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MapsGeofenceExitedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MapsGeofenceExitedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MapsGeofenceResultEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MapsGeofenceResultEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MapsGeofenceEventProperties, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MapsGeofenceEventProperties, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MapsGeofenceGeometry, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.MapsGeofenceGeometry, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobStateChangeEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobStateChangeEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobError, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobError, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobErrorDetail, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobErrorDetail, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobOutput, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobOutput, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobOutputAsset, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobOutputAsset, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobOutputProgressEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobOutputProgressEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobOutputStateChangeEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobOutputStateChangeEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobScheduledEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobScheduledEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobProcessingEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobProcessingEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobCancelingEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobCancelingEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobFinishedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobFinishedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobCanceledEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobCanceledEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobErroredEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobErroredEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobOutputCanceledEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobOutputCanceledEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobOutputCancelingEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobOutputCancelingEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobOutputErroredEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobOutputErroredEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobOutputFinishedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobOutputFinishedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobOutputProcessingEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobOutputProcessingEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobOutputScheduledEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobOutputScheduledEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaLiveEventEncoderConnectedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaLiveEventEncoderConnectedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaLiveEventConnectionRejectedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaLiveEventConnectionRejectedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaLiveEventEncoderDisconnectedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaLiveEventEncoderDisconnectedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaLiveEventIncomingStreamReceivedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaLiveEventIncomingStreamReceivedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaLiveEventIncomingStreamsOutOfSyncEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaLiveEventIncomingStreamsOutOfSyncEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaLiveEventIncomingVideoStreamsOutOfSyncEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaLiveEventIncomingVideoStreamsOutOfSyncEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaLiveEventIncomingDataChunkDroppedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaLiveEventIncomingDataChunkDroppedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaLiveEventIngestHeartbeatEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaLiveEventIngestHeartbeatEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaLiveEventTrackDiscontinuityDetectedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaLiveEventTrackDiscontinuityDetectedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaLiveEventChannelArchiveHeartbeatEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.MediaLiveEventChannelArchiveHeartbeatEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.PolicyInsightsPolicyStateCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.PolicyInsightsPolicyStateCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.PolicyInsightsPolicyStateChangedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.PolicyInsightsPolicyStateChangedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.PolicyInsightsPolicyStateDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.PolicyInsightsPolicyStateDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.RedisPatchingCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.RedisPatchingCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.RedisScalingCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.RedisScalingCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.RedisExportRDBCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.RedisExportRDBCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.RedisImportRDBCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.RedisImportRDBCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceWriteSuccessData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceWriteSuccessData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceWriteFailureData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceWriteFailureData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceWriteCancelData, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.ResourceWriteCancelData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceDeleteSuccessData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceDeleteSuccessData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceDeleteFailureData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceDeleteFailureData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceDeleteCancelData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceDeleteCancelData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceActionSuccessData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceActionSuccessData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceActionFailureData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceActionFailureData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceActionCancelData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceActionCancelData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceHttpRequest, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.ResourceHttpRequest, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceAuthorization, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.ResourceAuthorization, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.ServiceBusActiveMessagesAvailableWithNoListenersEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ServiceBusActiveMessagesAvailableWithNoListenersEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ServiceBusDeadletterMessagesAvailableWithNoListenersEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ServiceBusDeadletterMessagesAvailableWithNoListenersEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ServiceBusActiveMessagesAvailablePeriodicNotificationsEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ServiceBusActiveMessagesAvailablePeriodicNotificationsEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ServiceBusDeadletterMessagesAvailablePeriodicNotificationsEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ServiceBusDeadletterMessagesAvailablePeriodicNotificationsEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.SignalRServiceClientConnectionConnectedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.SignalRServiceClientConnectionConnectedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.SignalRServiceClientConnectionDisconnectedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.SignalRServiceClientConnectionDisconnectedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageBlobCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageBlobCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageBlobDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageBlobDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageDirectoryCreatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageDirectoryCreatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageDirectoryDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageDirectoryDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageBlobRenamedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageBlobRenamedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageDirectoryRenamedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageDirectoryRenamedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageLifecyclePolicyCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageLifecyclePolicyCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageLifecyclePolicyActionSummaryDetail, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageLifecyclePolicyActionSummaryDetail, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageBlobTierChangedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageBlobTierChangedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageAsyncOperationInitiatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageAsyncOperationInitiatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageBlobInventoryPolicyCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageBlobInventoryPolicyCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageTaskCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageTaskCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageTaskQueuedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageTaskQueuedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageTaskAssignmentQueuedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageTaskAssignmentQueuedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageTaskAssignmentCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageTaskAssignmentCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AppEventTypeDetail, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.AppEventTypeDetail, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.WebAppUpdatedEventData, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.WebAppUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.WebBackupOperationStartedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.WebBackupOperationStartedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.WebBackupOperationCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.WebBackupOperationCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.WebBackupOperationFailedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.WebBackupOperationFailedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.WebRestoreOperationStartedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.WebRestoreOperationStartedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.WebRestoreOperationCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.WebRestoreOperationCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.WebRestoreOperationFailedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.WebRestoreOperationFailedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.WebSlotSwapStartedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.WebSlotSwapStartedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.WebSlotSwapCompletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.WebSlotSwapCompletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.WebSlotSwapFailedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.WebSlotSwapFailedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.WebSlotSwapWithPreviewStartedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.WebSlotSwapWithPreviewStartedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.WebSlotSwapWithPreviewCancelledEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.WebSlotSwapWithPreviewCancelledEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.WebAppServicePlanUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.WebAppServicePlanUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AppServicePlanEventTypeDetail, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AppServicePlanEventTypeDetail, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.WebAppServicePlanUpdatedEventDataSku, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.WebAppServicePlanUpdatedEventDataSku, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceNotificationsHealthResourcesAvailabilityStatusChangedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceNotificationsHealthResourcesAvailabilityStatusChangedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceUpdatedDetails, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceUpdatedDetails, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceNotificationsOperationalDetails, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceNotificationsOperationalDetails, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceNotificationsHealthResourcesAnnotatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceNotificationsHealthResourcesAnnotatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceManagementCreatedOrUpdatedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceManagementCreatedOrUpdatedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceManagementDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceManagementDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceDeletedEventData, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceDeletedEventData, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceDeletedDetails, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceDeletedDetails, + Access.public +); +// Enums +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterJobStatus, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterJobStatus, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.recordingContentType, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.recordingContentType, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.recordingChannelType, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.recordingChannelType, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.recordingFormatType, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.recordingFormatType, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterLabelOperator, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterLabelOperator, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerSelectorState, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsRouterWorkerSelectorState, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsEmailDeliveryReportStatus, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.AcsEmailDeliveryReportStatus, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AcsUserEngagement, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.AcsUserEngagement, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.CommunicationCloudEnvironmentModel, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.CommunicationCloudEnvironmentModel, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.DataBoxStageName, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.DataBoxStageName, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.EventGridMQTTClientState, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.EventGridMQTTClientState, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.EventGridMQTTClientDisconnectionReason, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.EventGridMQTTClientDisconnectionReason, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceType, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceType, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobState, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobState, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobErrorCode, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobErrorCode, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobErrorCategory, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobErrorCategory, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.MediaJobRetry, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.MediaJobRetry, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.StorageTaskAssignmentCompletedStatus, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageTaskAssignmentCompletedStatus, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.StorageTaskCompletedStatus, + Usage.output +); +@@access(Microsoft.EventGrid.SystemEvents.StorageTaskCompletedStatus, + Access.public +); +@@usage(Microsoft.EventGrid.SystemEvents.AppAction, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.AppAction, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.StampKind, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.StampKind, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.AppServicePlanAction, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.AppServicePlanAction, Access.public); +@@usage(Microsoft.EventGrid.SystemEvents.AsyncStatus, Usage.output); +@@access(Microsoft.EventGrid.SystemEvents.AsyncStatus, Access.public); diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/HealthResources_AvailabilityStatusChanged.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/HealthResources_AvailabilityStatusChanged.json new file mode 100644 index 0000000000000..93799aea17b8e --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/HealthResources_AvailabilityStatusChanged.json @@ -0,0 +1,28 @@ +{ + "id": "1fb6fa94-d965-4306-abeq-4810f0774e97", + "source": "/subscriptions/{subscription-id}", + "subject": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Compute/virtualMachines/{vm-name}", + "data": { + "resourceInfo": { + "id": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Compute/virtualMachines/{vm-name}/providers/Microsoft.ResourceHealth/availabilityStatuses/{event-id}", + "name": "{event-id}", + "type": "Microsoft.ResourceHealth/availabilityStatuses", + "properties": { + "targetResourceId": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Compute/virtualMachines/{vm-name}", + "targetResourceType": "Microsoft.Compute/virtualMachines", + "occurredTime": "2023-07-24T19:20:37.9245071Z", + "previousAvailabilityState": "Unavailable", + "availabilityState": "Available" + } + }, + "operationalInfo": { + "resourceEventTime": "2023-07-24T19:20:37.9245071Z" + }, + "apiVersion": "2023-12-01" + }, + "type": "Microsoft.ResourceNotifications.HealthResources.AvailabilityStatusChanged", + "specversion": "1.0", + "time": "2023-07-24T19:20:37.9245071Z", + "operationId": "AvailabilityStatusChangedEventName", + "title": "AvailabilityStatusChanged" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/HealthResources_ResourceAnnotated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/HealthResources_ResourceAnnotated.json new file mode 100644 index 0000000000000..491bfd7597d44 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/HealthResources_ResourceAnnotated.json @@ -0,0 +1,31 @@ +{ + "id": "8945cf9b-e220-496e-ab4f-f3a239318995", + "source": "/subscriptions/{subscription-id}", + "subject": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Compute/virtualMachines/{vm-name}", + "data": { + "resourceInfo": { + "id": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Compute/virtualMachines/{vm-name}/providers/Microsoft.ResourceHealth/resourceAnnotations/{event-id}", + "name": "{event-id}", + "type": "Microsoft.ResourceHealth/resourceAnnotations", + "properties": { + "targetResourceId": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Compute/virtualMachines/{vm-name}", + "targetResourceType": "Microsoft.Compute/virtualMachines", + "occurredTime": "2023-07-24T19:20:37.9245071Z", + "annotationName": "VirtualMachineDeallocationInitiated", + "reason": "Stopping and deallocating", + "summary": "This virtual machine is stopped and deallocated as requested by an authorized user or process.", + "context": "Customer Initiated", + "category": "Not Applicable" + } + }, + "operationalInfo": { + "resourceEventTime": "2023-07-24T19:20:37.9245071Z" + }, + "apiVersion": "2022-08-01" + }, + "type": "Microsoft.ResourceNotifications.HealthResources.ResourceAnnotated", + "specversion": "1.0", + "time": "2023-07-24T19:20:37.9245071Z", + "operationId": "ResourceAnnotatedEventName", + "title": "ResourceAnnotated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/MediaLiveEventChannelArchiveHeartbeatEvent.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/MediaLiveEventChannelArchiveHeartbeatEvent.json new file mode 100644 index 0000000000000..27df681b35848 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/MediaLiveEventChannelArchiveHeartbeatEvent.json @@ -0,0 +1,14 @@ +{ + "source": "/subscriptions//resourceGroups//providers/Microsoft.Media/mediaservices/", + "subject": "liveEvent/mle1", + "type": "Microsoft.Media.LiveEventChannelArchiveHeartbeat", + "time": "2021-05-14T23:50:00.3240000", + "id": "7f450938-491f-41e1-b06f-c6cd3965d786", + "data": { + "channelLatencyMs": "10", + "latencyResultCode": "S_OK" + }, + "specversion": "1.0", + "operationId": "LiveEventChannelArchiveHeartbeatEventName", + "title": "LiveEventChannelArchiveHeartbeat" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/MediaLiveEventIngestHeartbeatEvent.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/MediaLiveEventIngestHeartbeatEvent.json new file mode 100644 index 0000000000000..fe68e1a956e3c --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/MediaLiveEventIngestHeartbeatEvent.json @@ -0,0 +1,28 @@ +{ + "source": "/subscriptions//resourceGroups//providers/Microsoft.Media/mediaservices/", + "subject": "liveEvent/mle1", + "type": "Microsoft.Media.LiveEventIngestHeartbeat", + "time": "2021-05-14T23:50:00.3240000", + "id": "7f450938-491f-41e1-b06f-c6cd3965d786", + "data": { + "trackType": "video", + "trackName": "video", + "bitrate": 2500000, + "incomingBitrate": 2462597, + "lastTimestamp": "106999", + "timescale": "1000", + "overlapCount": 0, + "discontinuityCount": 0, + "nonincreasingCount": 0, + "unexpectedBitrate": false, + "state": "Running", + "healthy": true, + "lastFragmentArrivalTime": "2021-05-14T23:50:00", + "ingestDriftValue": "0", + "transcriptionState": "On", + "transcriptionLanguage": "en-us" + }, + "specversion": "1.0", + "operationId": "LiveEventIngestHeartbeatEventName", + "title": "LiveEventIngestHeartbeat" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/Resources_CreatedOrUpdated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/Resources_CreatedOrUpdated.json new file mode 100644 index 0000000000000..4ba368f765667 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/Resources_CreatedOrUpdated.json @@ -0,0 +1,74 @@ +{ + "id": "4eef929a-a65c-47dd-93e2-46b8c17c6c17", + "source": "/subscriptions/{subscription-id}", + "subject": "/subscriptions/{subscription-id} /resourceGroups/{rg-name}/providers/Microsoft.Storage/storageAccounts/{storageAccount-name}", + "data": { + "resourceInfo": { + "tags": {}, + "id": "/subscriptions/{subcription-id} /resourceGroups/{rg-name}/providers/Microsoft.Storage/storageAccounts/{storageAccount-name}", + "name": "StorageAccount-name", + "type": "Microsoft.Storage/storageAccounts", + "location": "eastus", + "properties": { + "privateEndpointConnections": [], + "minimumTlsVersion": "TLS1_2", + "allowBlobPublicAccess": 1, + "allowSharedKeyAccess": 1, + "networkAcls": { + "bypass": "AzureServices", + "virtualNetworkRules": [], + "ipRules": [], + "defaultAction": "Allow" + }, + "supportsHttpsTrafficOnly": 1, + "encryption": { + "requireInfrastructureEncryption": 0, + "services": { + "file": { + "keyType": "Account", + "enabled": 1, + "lastEnabledTime": "2023-07-28T20:12:50.6380308Z" + }, + "blob": { + "keyType": "Account", + "enabled": 1, + "lastEnabledTime": "2023-07-28T20:12:50.6380308Z" + } + }, + "keySource": "Microsoft.Storage" + }, + "accessTier": "Hot", + "provisioningState": "Succeeded", + "creationTime": "2023-07-28T20:12:50.4661564Z", + "primaryEndpoints": { + "dfs": "https://{storageAccount-name}.dfs.core.windows.net/", + "web": "https://{storageAccount-name}.z13.web.core.windows.net/", + "blob": "https://{storageAccount-name}.blob.core.windows.net/", + "queue": "https://{storageAccount-name}.queue.core.windows.net/", + "table": "https://{storageAccount-name}.table.core.windows.net/", + "file": "https://{storageAccount-name}.file.core.windows.net/" + }, + "primaryLocation": "eastus", + "statusOfPrimary": "available", + "secondaryLocation": "westus", + "statusOfSecondary": "available", + "secondaryEndpoints": { + "dfs": "https://{storageAccount-name} -secondary.dfs.core.windows.net/", + "web": "https://{storageAccount-name}-secondary.z13.web.core.windows.net/", + "blob": "https://{storageAccount-name}-secondary.blob.core.windows.net/", + "queue": "https://{storageAccount-name}-secondary.queue.core.windows.net/", + "table": "https://{storageAccount-name}-secondary.table.core.windows.net/" + } + } + }, + "operationalInfo": { + "resourceEventTime": "2023-07-28T20:13:10.8418063Z" + }, + "apiVersion": "2019-06-01" + }, + "type": "Microsoft.ResourceNotifications.Resources.CreatedOrUpdated", + "specversion": "1.0", + "time": "2023-07-28T20:13:10.8418063Z", + "operationId": "CreatedOrUpdatedEventName", + "title": "CreatedOrUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/Resources_Deleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/Resources_Deleted.json new file mode 100644 index 0000000000000..5ffd29bde249e --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/Resources_Deleted.json @@ -0,0 +1,20 @@ +{ + "id": "d4611260-d179-4f86-b196-3a9d4128be2d", + "source": "/subscriptions/{subscription-id}", + "subject": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Storage/storageAccounts/{storageAccount-name}", + "data": { + "resourceInfo": { + "id": "/subscriptions/{subscription-id}/resourceGroups/{rg-name}/providers/Microsoft.Storage/storageAccounts/{storageAccount-name}", + "name": "storageAccount-name", + "type": "Microsoft.Storage/storageAccounts" + }, + "operationalInfo": { + "resourceEventTime": "2023-07-28T20:11:36.6347858Z" + } + }, + "type": "Microsoft.ResourceNotifications.Resources.Deleted", + "specversion": "1.0", + "time": "2023-07-28T20:11:36.6347858Z", + "operationId": "DeletedEventName", + "title": "Deleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/active_messages_available_periodic_notifications.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/active_messages_available_periodic_notifications.json new file mode 100644 index 0000000000000..25820ab479e75 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/active_messages_available_periodic_notifications.json @@ -0,0 +1,18 @@ +{ + "source": "/subscriptions/{subscription-id}/resourcegroups/DemoGroup/providers/Microsoft.ServiceBus/namespaces/{namespace}", + "subject": "topics/{topic}/subscriptions/{subscription}", + "type": "Microsoft.ServiceBus.ActiveMessagesAvailablePeriodicNotifications", + "time": "2018-02-14T05:12:53.4133526Z", + "id": "dede87b0-3656-419c-acaf-70c95ddc60f5", + "data": { + "namespaceName": "{namespace}", + "requestUri": "https://{namespace}.servicebus.windows.net/{topic}/subscriptions/{subscription}/$deadletterqueue/messages/head", + "entityType": "subscriber", + "queueName": null, + "topicName": "{topic}", + "subscriptionName": "{subscription}" + }, + "specversion": "1.0", + "operationId": "ActiveMessagesAvailablePeriodicNotificationsEventName", + "title": "ActiveMessagesAvailablePeriodicNotifications" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/active_messages_available_with_no_listeners.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/active_messages_available_with_no_listeners.json new file mode 100644 index 0000000000000..afbd8fed40743 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/active_messages_available_with_no_listeners.json @@ -0,0 +1,18 @@ +{ + "source": "/subscriptions/faa080af-c1d8-40ad-9cce-e1a450ca5b57/resourcegroups/v-tong-MonthlyTrleaseTestPass/providers/Microsoft.ServiceBus/namespaces/othercloudtest", + "subject": "queues/gaoqueue", + "type": "Microsoft.ServiceBus.ActiveMessagesAvailableWithNoListeners", + "time": "2021-09-09T05:43:01.8429206Z", + "id": "3ce929ea-fab7-428a-8270-0452970fa710", + "data": { + "namespaceName": "othercloudtest", + "requestUri": "https://othercloudtest.servicebus.windows.net/gaoqueue/messages/head", + "entityType": "queue", + "queueName": "gaoqueue", + "topicName": null, + "subscriptionName": null + }, + "specversion": "1.0", + "operationId": "ActiveMessagesAvailableWithNoListenersEventName", + "title": "ActiveMessagesAvailableWithNoListeners" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiCreated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiCreated.json new file mode 100644 index 0000000000000..b18026ef1ecc1 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiCreated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/apis/myapi", + "type": "Microsoft.ApiManagement.APICreated", + "time": "2021-07-12T23:13:44.9048323Z", + "id": "95015754-aa51-4eb6-98d9-9ee322b82ad7", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/apis/myapi" + }, + "specversion": "1.0", + "operationId": "APICreatedEventName", + "title": "APICreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiDeleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiDeleted.json new file mode 100644 index 0000000000000..a83f317cafabd --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiDeleted.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/apis/myapi;Rev=1", + "type": "Microsoft.ApiManagement.APIDeleted", + "time": "2021-07-12T23:13:44.9048323Z", + "id": "95015754-aa51-4eb6-98d9-9ee322b82ad7", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/apis/myapi;Rev=1" + }, + "specversion": "1.0", + "operationId": "APIDeletedEventName", + "title": "APIDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiReleaseCreated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiReleaseCreated.json new file mode 100644 index 0000000000000..7bc9e9c121e2b --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiReleaseCreated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/apis/{apiId}/releases/{releaseId}", + "type": "Microsoft.ApiManagement.APIReleaseCreated", + "time": "2021-07-12T23:13:44.9048323Z", + "id": "95015754-aa51-4eb6-98d9-9ee322b82ad7", + "data": { + "resourceUri": "/subscriptions/subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/apis/{apiId}/releases/{releaseId}" + }, + "specversion": "1.0", + "operationId": "APIReleaseCreatedEventName", + "title": "APIReleaseCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiReleaseDeleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiReleaseDeleted.json new file mode 100644 index 0000000000000..809b213397e92 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiReleaseDeleted.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/apis/{apiId}/releases/{releaseId}", + "type": "Microsoft.ApiManagement.APIReleaseDeleted", + "time": "2021-07-12T23:13:44.9048323Z", + "id": "95015754-aa51-4eb6-98d9-9ee322b82ad7", + "data": { + "resourceUri": "/subscriptions/subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/apis/{apiId}/releases/{releaseId}" + }, + "specversion": "1.0", + "operationId": "APIReleaseDeletedEventName", + "title": "APIReleaseDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiReleaseUpdated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiReleaseUpdated.json new file mode 100644 index 0000000000000..84b3512bba39e --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiReleaseUpdated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/apis/{apiId}/releases/{releaseId}", + "type": "Microsoft.ApiManagement.APIReleaseUpdated", + "time": "2021-07-12T23:13:44.9048323Z", + "id": "95015754-aa51-4eb6-98d9-9ee322b82ad7", + "data": { + "resourceUri": "/subscriptions/subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/apis/{apiId}/releases/{releaseId}" + }, + "specversion": "1.0", + "operationId": "APIReleaseUpdatedEventName", + "title": "APIReleaseUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiUpdated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiUpdated.json new file mode 100644 index 0000000000000..14f42cdcf6903 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/apiUpdated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/apis/myapi;Rev=1", + "type": "Microsoft.ApiManagement.APIUpdated", + "time": "2021-07-12T23:13:44.9048323Z", + "id": "95015754-aa51-4eb6-98d9-9ee322b82ad7", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/apis/myapi;Rev=1" + }, + "specversion": "1.0", + "operationId": "APIUpdatedEventName", + "title": "APIUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/app_service_plan_updated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/app_service_plan_updated.json new file mode 100644 index 0000000000000..85df248a02a5b --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/app_service_plan_updated.json @@ -0,0 +1,30 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/serverfarms/{serverfarm-name}", + "subject": "/Microsoft.Web/serverfarms/{plan-name}", + "type": "Microsoft.Web.AppServicePlanUpdated", + "time": "2020-01-28T18:22:23.5516004Z", + "id": "56501672-9150-40e1-893a-18420c7fdbf7", + "data": { + "serverFarmEventTypeDetail": { + "stampKind": "Public", + "action": "Updated", + "status": "Started" + }, + "serverFarmId": "0", + "sku": { + "name": "P1v2", + "tier": "PremiumV2", + "size": "P1v2", + "family": "Pv2", + "capacity": 1 + }, + "clientRequestId": "8f880321-a991-45c7-b743-6ff63fe4c004", + "correlationRequestId": "1995c3be-ba7f-4ccf-94af-516df637ec8a", + "requestId": "b973a8e6-6949-4783-b44c-ac778be831bb", + "address": "/websystems/WebSites/serverfarms/subscriptions/{subscription-id}/webspaces/{webspace-id}/serverfarms/{plan-name}/async", + "verb": "PUT" + }, + "specversion": "1.0", + "operationId": "AppServicePlanUpdatedEventName", + "title": "AppServicePlanUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/app_updated_changed_app_settings.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/app_updated_changed_app_settings.json new file mode 100644 index 0000000000000..c4de138b0d5a0 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/app_updated_changed_app_settings.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{site-name}", + "subject": "/Microsoft.Web/sites/{site-name}", + "type": "Microsoft.Web.AppUpdated", + "time": "2020-01-28T18:22:30.2760952Z", + "id": "b74ea56b-2a3f-4de5-a5d7-38e60c81cf23", + "data": { + "appEventTypeDetail": { + "action": "Stopped" + }, + "name": "{site-name}", + "clientRequestId": "64a5e0aa-7cee-4ff1-9093-b9197b820014", + "correlationRequestId": "25bb36a5-8f6c-4f04-b615-e9a0ee045756", + "requestId": "f2e8eb3f-b190-42de-b99e-6acefe587374", + "address": "/websystems/WebSites/web/subscriptions/{subscription-id}/webspaces/{webspace}/sites/{site-name}/stop", + "verb": "POST" + }, + "specversion": "1.0", + "operationId": "AppUpdatedEventName", + "title": "AppUpdated Changed App Settings" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/app_updated_restarted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/app_updated_restarted.json new file mode 100644 index 0000000000000..2ffb6a7c1579e --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/app_updated_restarted.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{site-name}", + "subject": "/Microsoft.Web/sites/{site-name}", + "type": "Microsoft.Web.AppUpdated", + "time": "2020-01-28T18:22:30.2760952Z", + "id": "b74ea56b-2a3f-4de5-a5d7-38e60c81cf23", + "data": { + "appEventTypeDetail": { + "action": "Stopped" + }, + "name": "{site-name}", + "clientRequestId": "64a5e0aa-7cee-4ff1-9093-b9197b820014", + "correlationRequestId": "25bb36a5-8f6c-4f04-b615-e9a0ee045756", + "requestId": "f2e8eb3f-b190-42de-b99e-6acefe587374", + "address": "/websystems/WebSites/web/subscriptions/{subscription-id}/webspaces/{webspace}/sites/{site-name}/stop", + "verb": "POST" + }, + "specversion": "1.0", + "operationId": "AppUpdatedEventName", + "title": "AppUpdated Restarted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/app_updated_stopped.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/app_updated_stopped.json new file mode 100644 index 0000000000000..1418759eb75ff --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/app_updated_stopped.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{site-name}", + "subject": "/Microsoft.Web/sites/{site-name}", + "type": "Microsoft.Web.AppUpdated", + "time": "2020-01-28T18:22:30.2760952Z", + "id": "b74ea56b-2a3f-4de5-a5d7-38e60c81cf23", + "data": { + "appEventTypeDetail": { + "action": "Stopped" + }, + "name": "{site-name}", + "clientRequestId": "64a5e0aa-7cee-4ff1-9093-b9197b820014", + "correlationRequestId": "25bb36a5-8f6c-4f04-b615-e9a0ee045756", + "requestId": "f2e8eb3f-b190-42de-b99e-6acefe587374", + "address": "/websystems/WebSites/web/subscriptions/{subscription-id}/webspaces/{webspace}/sites/{site-name}/stop", + "verb": "POST" + }, + "specversion": "1.0", + "operationId": "AppUpdatedEventName", + "title": "AppUpdated Stopped" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/backup_operation_completed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/backup_operation_completed.json new file mode 100644 index 0000000000000..cececab71686a --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/backup_operation_completed.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{site-name}", + "subject": "/Microsoft.Web/sites/{site-name}", + "type": "Microsoft.Web.BackupOperationCompleted", + "time": "2020-01-28T18:26:51.7194887Z", + "id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8", + "data": { + "appEventTypeDetail": { + "action": "Started" + }, + "name": "{site-name}", + "clientRequestId": "None", + "correlationRequestId": "None", + "requestId": "292f499d-04ee-4066-994d-c2df57b99198", + "address": "None", + "verb": "None" + }, + "specversion": "1.0", + "operationId": "BackupOperationCompletedEventName", + "title": "BackupOperationCompleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/backup_operation_failed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/backup_operation_failed.json new file mode 100644 index 0000000000000..066b7f80aa0ae --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/backup_operation_failed.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{site-name}", + "subject": "/Microsoft.Web/sites/{site-name}", + "type": "Microsoft.Web.BackupOperationFailed", + "time": "2020-01-28T18:26:51.7194887Z", + "id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8", + "data": { + "appEventTypeDetail": { + "action": "Started" + }, + "name": "{site-name}", + "clientRequestId": "None", + "correlationRequestId": "None", + "requestId": "292f499d-04ee-4066-994d-c2df57b99198", + "address": "None", + "verb": "None" + }, + "specversion": "1.0", + "operationId": "BackupOperationFailedEventName", + "title": "BackupOperationFailed" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/backup_operation_started.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/backup_operation_started.json new file mode 100644 index 0000000000000..d8cf500757b36 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/backup_operation_started.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{site-name}", + "subject": "/Microsoft.Web/sites/{site-name}", + "type": "Microsoft.Web.BackupOperationStarted", + "time": "2020-01-28T18:26:51.7194887Z", + "id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8", + "data": { + "appEventTypeDetail": { + "action": "Started" + }, + "name": "{site-name}", + "clientRequestId": "None", + "correlationRequestId": "None", + "requestId": "292f499d-04ee-4066-994d-c2df57b99198", + "address": "None", + "verb": "None" + }, + "specversion": "1.0", + "operationId": "BackupOperationStartedEventName", + "title": "BackupOperationStarted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_created.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_created.json new file mode 100644 index 0000000000000..f31c5f8a4122f --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_created.json @@ -0,0 +1,24 @@ +{ + "source": "/subscriptions/faa080af-c1d8-40ad-9cce-e1a450ca5b57/resourceGroups/jolov/providers/Microsoft.Storage/storageAccounts/jolovstorage", + "subject": "/blobServices/default/containers/gaocontainer/blobs/Template1.xlsx", + "type": "Microsoft.Storage.BlobCreated", + "time": "2021-08-16T02:51:26.4248221Z", + "id": "beb21a5e-401e-002b-3749-928517060431", + "data": { + "api": "PutBlob", + "clientRequestId": "89bc72c2-5dfe-4d9f-9706-43612c1bd01b", + "requestId": "beb21a5e-401e-002b-3749-928517000000", + "eTag": "0x8D96060BDA19D9D", + "contentType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "contentLength": 17555, + "blobType": "BlockBlob", + "url": "https://jolovstorage.blob.core.windows.net/gaocontainer/Template1.xlsx", + "sequencer": "0000000000000000000000000000B00D0000000005b058d3", + "storageDiagnostics": { + "batchId": "23f68872-a006-0065-0049-9240f2000000" + } + }, + "specversion": "1.0", + "operationId": "BlobCreatedEventName", + "title": "BlobCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_deleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_deleted.json new file mode 100644 index 0000000000000..2d09010d37090 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_deleted.json @@ -0,0 +1,23 @@ +{ + "source": "/subscriptions/faa080af-c1d8-40ad-9cce-e1a450ca5b57/resourceGroups/jolov/providers/Microsoft.Storage/storageAccounts/jolovstorage", + "subject": "/blobServices/default/containers/gaocontainer/blobs/Template1.xlsx", + "type": "Microsoft.Storage.BlobDeleted", + "time": "2021-08-16T02:58:18.5038290Z", + "id": "3626e710-c01e-005c-794a-92005606d96d", + "data": { + "api": "DeleteBlob", + "requestId": "3626e710-c01e-005c-794a-920056000000", + "eTag": "0x8D96061B33FE1D2", + "contentType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "contentLength": 17555, + "blobType": "BlockBlob", + "url": "https://jolovstorage.blob.core.windows.net/gaocontainer/Template1.xlsx", + "sequencer": "0000000000000000000000000000B00D0000000005b29696", + "storageDiagnostics": { + "batchId": "24045172-a006-0065-004a-9240f2000000" + } + }, + "specversion": "1.0", + "operationId": "BlobDeletedEventName", + "title": "BlobDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_inventory_policy_completed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_inventory_policy_completed.json new file mode 100644 index 0000000000000..afa2e78302131 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_inventory_policy_completed.json @@ -0,0 +1,19 @@ +{ + "source": "/subscriptions/faa080af-c1d8-40ad-9cce-e1a450ca5b57/resourceGroups/jolov/providers/Microsoft.Storage/storageAccounts/jolovstorage", + "subject": "BlobDataManagement/BlobInventory", + "type": "Microsoft.Storage.BlobInventoryPolicyCompleted", + "time": "2021-08-20T22:26:04.0000000Z", + "id": "5d055648-1126-4053-bc6f-f86b8d14790f", + "data": { + "scheduleDateTime": "2021-08-20T22:04:55Z", + "accountName": "jolovstorage", + "ruleName": "gao8.20", + "policyRunStatus": "Succeeded", + "policyRunStatusMessage": "Inventory run succeeded, refer manifest file for inventory details.", + "policyRunId": "83e7c94c-6973-4fbc-acdc-88277e448bf5", + "manifestBlobUrl": "https://jolovstorage.blob.core.windows.net/gaoaugcontainer/2021/08/20/22-04-55/gao8.20/gao8.20-manifest.json" + }, + "specversion": "1.0", + "operationId": "BlobInventoryPolicyCompletedEventName", + "title": "BlobInventoryPolicyCompleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_renamed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_renamed.json new file mode 100644 index 0000000000000..eb323b34bce5c --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_renamed.json @@ -0,0 +1,22 @@ +{ + "source": "/subscriptions/faa080af-c1d8-40ad-9cce-e1a450ca5b57/resourceGroups/jolov/providers/Microsoft.Storage/storageAccounts/jolovdfs", + "subject": "/blobServices/default/containers/gaocontainer/blobs/newname", + "type": "Microsoft.Storage.BlobRenamed", + "time": "2021-08-19T01:37:38.9324784Z", + "id": "707665f1-a01f-0037-799a-9490a106020e", + "data": { + "api": "RenameFile", + "requestId": "707665f1-a01f-0037-799a-9490a1000000", + "destinationBlobUrl": "https://jolovdfs.blob.core.windows.net/gaocontainer/newname", + "sourceBlobUrl": "https://jolovdfs.blob.core.windows.net/gaocontainer/metrics.txt", + "destinationUrl": "https://jolovdfs.dfs.core.windows.net/gaocontainer/newname", + "sourceUrl": "https://jolovdfs.dfs.core.windows.net/gaocontainer/metrics.txt", + "sequencer": "0000000000000000000000000000010200000000000364db", + "storageDiagnostics": { + "batchId": "69bbaf93-267f-4752-9267-b575e61e0d5d" + } + }, + "specversion": "1.0", + "operationId": "BlobRenamedEventName", + "title": "BlobRenamed" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_tier_changed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_tier_changed.json new file mode 100644 index 0000000000000..b47e37c1bfea4 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/blob_tier_changed.json @@ -0,0 +1,23 @@ +{ + "source": "/subscriptions/faa080af-c1d8-40ad-9cce-e1a450ca5b57/resourceGroups/jolov/providers/Microsoft.Storage/storageAccounts/jolovstorage", + "subject": "/blobServices/default/containers/gaocontainer/blobs/Template1.xlsx", + "type": "Microsoft.Storage.BlobTierChanged", + "time": "2021-08-16T03:13:40.5681296Z", + "id": "5ed67fc9-401e-0009-354c-92eb2106efc7", + "data": { + "api": "SetBlobTier", + "requestId": "5ed67fc9-401e-0009-354c-92eb21000000", + "eTag": "0x8D9606211320D17", + "contentType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "contentLength": 17555, + "blobType": "BlockBlob", + "url": "https://jolovstorage.blob.core.windows.net/gaocontainer/Template1.xlsx", + "sequencer": "0000000000000000000000000000B00D0000000005b7c63a", + "storageDiagnostics": { + "batchId": "24231d1f-a006-0065-004c-9240f2000000" + } + }, + "specversion": "1.0", + "operationId": "BlobTierChangedEventName", + "title": "BlobTierChanged" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/capture_file_created.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/capture_file_created.json new file mode 100644 index 0000000000000..cf34596b12441 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/capture_file_created.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{guid}/resourcegroups/rgDataMigrationSample/providers/Microsoft.EventHub/namespaces/tfdatamigratens", + "subject": "eventhubs/hubdatamigration", + "type": "Microsoft.EventHub.CaptureFileCreated", + "time": "2017-08-31T19:12:46.0498024Z", + "id": "14e87d03-6fbf-4bb2-9a21-92bd1281f247", + "data": { + "fileUrl": "https://tf0831datamigrate.blob.core.windows.net/windturbinecapture/tfdatamigratens/hubdatamigration/1/2017/08/31/19/11/45.avro", + "fileType": "AzureBlockBlob", + "partitionId": "1", + "sizeInBytes": 249168, + "eventCount": 1500, + "firstSequenceNumber": 2400, + "lastSequenceNumber": 3899, + "firstEnqueueTime": "2017-08-31T19:12:14.674Z", + "lastEnqueueTime": "2017-08-31T19:12:44.309Z" + }, + "specversion": "1.0", + "operationId": "CaptureFileCreatedEventName", + "title": "CaptureFileCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chart_deleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chart_deleted.json new file mode 100644 index 0000000000000..8d469b96edaf5 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chart_deleted.json @@ -0,0 +1,28 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.ContainerRegistry/registries/{name}", + "subject": "mychart:1.0.0", + "type": "Microsoft.ContainerRegistry.ChartDeleted", + "time": "2019-03-12T22:42:08.7034064Z", + "id": "39136b3a-1a7e-416f-a09e-5c85d5402fca", + "data": { + "id": "ea3a9c28-5b17-40f6-a500-3f02b682927", + "timestamp": "2019-03-12T15:42:08.3783775-07:00", + "action": "chart_delete", + "location": "westus", + "target": { + "mediaType": "application/vnd.acr.helm.chart", + "size": 25265, + "digest": "sha256:7f060075264b5ba7c14c23672698152ae6a3ebac1c47916e4efe19cd624d5fab", + "repository": "repo", + "tag": "mychart-1.0.0.tgz", + "name": "mychart", + "version": "1.0.0" + }, + "connectedRegistry": { + "name": "edge1" + } + }, + "specversion": "1.0", + "operationId": "ChartDeletedEventName", + "title": "ChartDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chart_pushed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chart_pushed.json new file mode 100644 index 0000000000000..1aed13dbb33f0 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chart_pushed.json @@ -0,0 +1,28 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.ContainerRegistry/registries/{name}", + "subject": "mychart:1.0.0", + "type": "Microsoft.ContainerRegistry.ChartPushed", + "time": "2019-03-12T22:16:31.5164086Z", + "id": "ea3a9c28-5b17-40f6-a500-3f02b6829277", + "data": { + "id": "ea3a9c28-5b17-40f6-a500-3f02b682927", + "timestamp": "2019-03-12T15:16:31.0087496-07:00", + "action": "chart_push", + "location": "westus", + "target": { + "mediaType": "application/vnd.acr.helm.chart", + "size": 25265, + "digest": "sha256:7f060075264b5ba7c14c23672698152ae6a3ebac1c47916e4efe19cd624d5fab", + "repository": "repo", + "tag": "mychart-1.0.0.tgz", + "name": "mychart", + "version": "1.0.0" + }, + "connectedRegistry": { + "name": "edge1" + } + }, + "specversion": "1.0", + "operationId": "ChartPushedEventName", + "title": "ChartPushed" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_deleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_deleted.json new file mode 100644 index 0000000000000..af12a893574b7 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_deleted.json @@ -0,0 +1,34 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/sender/{rawId}/recipient/{rawId}", + "type": "Microsoft.Communication.ChatMessageDeleted", + "time": "2021-02-19T00:43:10.9982947Z", + "id": "23cfcc13-33f2-4ae1-8d23-b5015b05302b", + "data": { + "deleteTime": "2021-02-19T00:43:10.14Z", + "messageId": "1613695388152", + "senderId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d07-83fe-084822000f6e", + "senderCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d07-83fe-084822000f6e", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d07-83fe-084822000f6e" + } + }, + "senderDisplayName": "Bob(Admin)", + "composeTime": "2021-02-19T00:43:08.152Z", + "type": "Text", + "version": 1613695390361, + "recipientId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d60-83fe-084822000f6f", + "recipientCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d60-83fe-084822000f6f", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d60-83fe-084822000f6f" + } + }, + "transactionId": "fFs4InlBn0O/0WyhfQZVSQ.1.1.2.1.1867776045.1.4", + "threadId": "19:48899258eec941e7a281e03edc8f4964@thread.v2" + }, + "specversion": "1.0", + "operationId": "ChatMessageDeletedEventName", + "title": "ChatMessageDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_deleted_in_thread.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_deleted_in_thread.json new file mode 100644 index 0000000000000..a18d69128cca3 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_deleted_in_thread.json @@ -0,0 +1,26 @@ +{ + "source": "/subscriptions/{subscription-id}/resourcegroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/sender/{rawId}", + "type": "Microsoft.Communication.ChatMessageDeletedInThread", + "time": "2021-02-20T01:00:14.8518034Z", + "id": "17d9c39d-0c58-4ed8-947d-c55959f57f75", + "data": { + "deleteTime": "2021-02-19T16:59:10.464-08:00", + "messageId": "1613782685440", + "type": "Text", + "version": "1613782814333", + "senderDisplayName": "Scott", + "senderCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38a0-88f7-084822002453", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38a0-88f7-084822002453" + } + }, + "composeTime": "2021-02-19T16:58:05.44-08:00", + "threadId": "19:e07c8ddc5bab4c059ea9f11d29b544b6@thread.v2", + "transactionId": "HqU6PeK5AkCRSpW8eAbL0A.1.1.2.1.987824181.1" + }, + "specversion": "1.0", + "operationId": "ChatMessageDeletedInThreadEventName", + "title": "ChatMessageDeletedInThread" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_edited.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_edited.json new file mode 100644 index 0000000000000..8d18c57c3bcc7 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_edited.json @@ -0,0 +1,39 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/sender/{rawId}/recipient/{rawId}", + "type": "Microsoft.Communication.ChatMessageEdited", + "time": "2021-02-19T00:28:21.7456718Z", + "id": "93fc1037-b645-4eb0-a0f2-d7bb3ba6e060", + "data": { + "editTime": "2021-02-19T00:28:20.784Z", + "messageBody": "Let's Chat about new communication services.", + "messageId": "1613694357917", + "metadata": { + "key": "value", + "description": "A map of data associated with the message" + }, + "senderId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7caf-07fd-084822001724", + "senderCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7caf-07fd-084822001724", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7caf-07fd-084822001724" + } + }, + "senderDisplayName": "Bob(Admin)", + "composeTime": "2021-02-19T00:25:57.917Z", + "type": "Text", + "version": 1613694500784, + "recipientId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d60-83fe-084822000f6f", + "recipientCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d60-83fe-084822000f6f", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d60-83fe-084822000f6f" + } + }, + "transactionId": "1mL4XZH2gEecu/alk9tOtw.2.1.2.1.1833042153.1.7", + "threadId": "19:6e5d6ca1d75044a49a36a7965ec4a906@thread.v2" + }, + "specversion": "1.0", + "operationId": "ChatMessageEditedEventName", + "title": "ChatMessageEdited" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_edited_in_thread.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_edited_in_thread.json new file mode 100644 index 0000000000000..650a5a61046d6 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_edited_in_thread.json @@ -0,0 +1,31 @@ +{ + "source": "/subscriptions/{subscription-id}/resourcegroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/sender/{rawId}", + "type": "Microsoft.Communication.ChatMessageEditedInThread", + "time": "2021-02-20T00:59:10.7600061Z", + "id": "7b8dc01e-2659-41fa-bc8c-88a967714510", + "data": { + "editTime": "2021-02-19T16:59:10.464-08:00", + "messageBody": "8effb181-1eb2-4a58-9d03-ed48a461b19b", + "messageId": "1613782685964", + "metadata": { + "key": "value", + "description": "A map of data associated with the message" + }, + "type": "Text", + "version": "1613782750464", + "senderDisplayName": "Scott", + "senderCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38a0-88f7-084822002453", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38a0-88f7-084822002453" + } + }, + "composeTime": "2021-02-19T16:58:05.964-08:00", + "threadId": "19:e07c8ddc5bab4c059ea9f11d29b544b6@thread.v2", + "transactionId": "H8Gpj3NkIU6bXlWw8WPvhQ.2.1.2.1.985333801.1" + }, + "specversion": "1.0", + "operationId": "ChatMessageEditedInThreadEventName", + "title": "ChatMessageEditedInThread" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_received.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_received.json new file mode 100644 index 0000000000000..39c7115e884b3 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_received.json @@ -0,0 +1,38 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/sender/{rawId}/recipient/{rawId}", + "type": "Microsoft.Communication.ChatMessageReceived", + "time": "2021-02-19T00:25:59.9436666Z", + "id": "02272459-badb-4e2e-b538-4cb8a2f71da6", + "data": { + "messageBody": "Welcome to Azure Communication Services", + "messageId": "1613694358927", + "metadata": { + "key": "value", + "description": "A map of data associated with the message" + }, + "senderId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7caf-07fd-084822001724", + "senderCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7caf-07fd-084822001724", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7caf-07fd-084822001724" + } + }, + "senderDisplayName": "Jhon", + "composeTime": "2021-02-19T00:25:58.927Z", + "type": "Text", + "version": 1613694358927, + "recipientId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d05-83fe-084822000f6d", + "recipientCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d05-83fe-084822000f6d", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d05-83fe-084822000f6d" + } + }, + "transactionId": "oh+LGB2dUUadMcTAdRWQxQ.1.1.1.1.1827536918.1.7", + "threadId": "19:6e5d6ca1d75044a49a36a7965ec4a906@thread.v2" + }, + "specversion": "1.0", + "operationId": "ChatMessageReceivedEventName", + "title": "ChatMessageReceived" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_received_in_thread.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_received_in_thread.json new file mode 100644 index 0000000000000..b92d6d6f1423c --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_message_received_in_thread.json @@ -0,0 +1,30 @@ +{ + "source": "/subscriptions/{subscription-id}/resourcegroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/sender/8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cdb-4916-07fd-084822002624", + "type": "Microsoft.Communication.ChatMessageReceivedInThread", + "time": "2021-02-20T01:07:10.5704596Z", + "id": "4f614f97-c451-4b82-a8c9-1e30c3bfcda1", + "data": { + "messageBody": "Talk about new Thread Events in commuication services", + "messageId": "1613783230064", + "metadata": { + "key": "value", + "description": "A map of data associated with the message" + }, + "type": "Text", + "version": "1613783230064", + "senderDisplayName": "Bob", + "senderCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cdb-4916-07fd-084822002624", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cdb-4916-07fd-084822002624" + } + }, + "composeTime": "2021-02-19T17:07:10.064-08:00", + "threadId": "19:5b3809e80e4a439d92c3316e273f4a2b@thread.v2", + "transactionId": "foMkntkKS0O/MhMlIE5Aag.1.1.1.1.1004077250.1" + }, + "specversion": "1.0", + "operationId": "ChatMessageReceivedInThreadEventName", + "title": "ChatMessageReceivedInThread" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_participant_added_to_thread_with_user.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_participant_added_to_thread_with_user.json new file mode 100644 index 0000000000000..73bd86b07dfe4 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_participant_added_to_thread_with_user.json @@ -0,0 +1,41 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/participantAdded/{rawId}/recipient/{rawId}", + "type": "Microsoft.Communication.ChatParticipantAddedToThreadWithUser", + "time": "2021-02-25T06:37:31.4880091Z", + "id": "049a5a7f-6cd7-43c1-b352-df9e9e6146d1", + "data": { + "time": "2021-02-25T06:37:29.9232485Z", + "addedByCommunicationIdentifier": { + "rawId": "8:acs:0a420b29-555c-4f6b-841e-de8059893bb9_00000008-77c9-8767-1655-373a0d00885d", + "communicationUser": { + "id": "8:acs:0a420b29-555c-4f6b-841e-de8059893bb9_00000008-77c9-8767-1655-373a0d00885d" + } + }, + "participantAdded": { + "displayName": "John Smith", + "participantCommunicationIdentifier": { + "rawId": "8:acs:0a420b29-555c-4f6b-841e-de8059893bb9_00000008-77c9-8785-1655-373a0d00885f", + "communicationUser": { + "id": "8:acs:0a420b29-555c-4f6b-841e-de8059893bb9_00000008-77c9-8785-1655-373a0d00885f" + } + }, + "metadata": { + "key": "value" + } + }, + "recipientCommunicationIdentifier": { + "rawId": "8:acs:0a420b29-555c-4f6b-841e-de8059893bb9_00000008-77c9-8781-1655-373a0d00885e", + "communicationUser": { + "id": "8:acs:0a420b29-555c-4f6b-841e-de8059893bb9_00000008-77c9-8781-1655-373a0d00885e" + } + }, + "createTime": "2021-02-25T06:37:17.371Z", + "version": 1614235049907, + "transactionId": "q7rr9by6m0CiGiQxKdSO1w.1.1.1.1.1473446055.1.6", + "threadId": "19:f1400e1c542f4086a606b52ad20cd0bd@thread.v2" + }, + "specversion": "1.0", + "operationId": "ChatParticipantAddedToThreadWithUserEventName", + "title": "ChatParticipantAddedToThreadWithUser" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_participant_removed_from_thread_with_user.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_participant_removed_from_thread_with_user.json new file mode 100644 index 0000000000000..2677715e6c02f --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_participant_removed_from_thread_with_user.json @@ -0,0 +1,41 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/participantRemoved/{rawId}/recipient/{rawId}", + "type": "Microsoft.Communication.ChatParticipantRemovedFromThreadWithUser", + "time": "2021-02-25T06:40:24.2244945Z", + "id": "e8a4df24-799d-4c53-94fd-1e05703a4549", + "data": { + "time": "2021-02-25T06:40:20.3564556Z", + "removedByCommunicationIdentifier": { + "rawId": "8:acs:0a420b29-555c-4f6b-841e-de8059893bb9_00000008-77c9-8767-1655-373a0d00885d", + "communicationUser": { + "id": "8:acs:0a420b29-555c-4f6b-841e-de8059893bb9_00000008-77c9-8767-1655-373a0d00885d" + } + }, + "participantRemoved": { + "displayName": "Bob", + "participantCommunicationIdentifier": { + "rawId": "8:acs:0a420b29-555c-4f6b-841e-de8059893bb9_00000008-77c9-8785-1655-373a0d00885f", + "communicationUser": { + "id": "8:acs:0a420b29-555c-4f6b-841e-de8059893bb9_00000008-77c9-8785-1655-373a0d00885f" + } + }, + "metadata": { + "key": "value" + } + }, + "recipientCommunicationIdentifier": { + "rawId": "8:acs:0a420b29-555c-4f6b-841e-de8059893bb9_00000008-77c9-8781-1655-373a0d00885e", + "communicationUser": { + "id": "8:acs:0a420b29-555c-4f6b-841e-de8059893bb9_00000008-77c9-8781-1655-373a0d00885e" + } + }, + "createTime": "2021-02-25T06:37:17.371Z", + "version": 1614235220325, + "transactionId": "usv74GQ5zU+JmWv/bQ+qfg.1.1.1.1.1480065078.1.5", + "threadId": "19:f1400e1c542f4086a606b52ad20cd0bd@thread.v2" + }, + "specversion": "1.0", + "operationId": "ChatParticipantRemovedFromThreadWithUserEventName", + "title": "ChatParticipantRemovedFromThreadWithUser" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_created.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_created.json new file mode 100644 index 0000000000000..826c097015049 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_created.json @@ -0,0 +1,79 @@ +{ + "source": "/subscriptions/{subscription-id}/resourcegroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/createdBy/{rawId}", + "type": "Microsoft.Communication.ChatThreadCreated", + "time": "2021-02-20T00:31:54.5369967Z", + "id": "a607ac52-0974-4d3c-bfd8-6f708a26f509", + "data": { + "createdByCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38a0-88f7-084822002453", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38a0-88f7-084822002453" + } + }, + "properties": { + "topic": "Talk about new Thread Events in commuication services" + }, + "participants": [ + { + "displayName": "Bob", + "participantCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38a0-88f7-084822002453", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38a0-88f7-084822002453" + } + }, + "metadata": { + "key": "value" + } + }, + { + "displayName": "Scott", + "participantCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38e6-07fd-084822002467", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38e6-07fd-084822002467" + } + }, + "metadata": { + "key": "value", + "description": "A map of data associated with the participant" + } + }, + { + "displayName": "Shawn", + "participantCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38f6-83fe-084822002337", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38f6-83fe-084822002337" + } + }, + "metadata": { + "key": "value" + } + }, + { + "displayName": "Anthony", + "participantCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38e3-e1fe-084822002c35", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38e3-e1fe-084822002c35" + } + }, + "metadata": { + "key": "value" + } + } + ], + "metadata": { + "key": "value" + }, + "createTime": "2021-02-19T16:31:54.365-08:00", + "version": 1613781114365, + "threadId": "19:e07c8ddc5bab4c059ea9f11d29b544b6@thread.v2", + "transactionId": "gK6+kgANy0O1wchlVKVTJg.1.1.1.1.921436178.1" + }, + "specversion": "1.0", + "operationId": "ChatThreadCreatedEventName", + "title": "ChatThreadCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_created_withUser.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_created_withUser.json new file mode 100644 index 0000000000000..d82045ca4b288 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_created_withUser.json @@ -0,0 +1,72 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/createdBy/rawId/recipient/rawId", + "type": "Microsoft.Communication.ChatThreadCreatedWithUser", + "time": "2021-02-18T23:47:34.7437103Z", + "id": "eba02b2d-37bf-420e-8656-3a42ef74c435", + "data": { + "createdBy": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-576c-286d-e1fe-0848220013b9", + "createdByCommunicationIdentifier": { + "rawId": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-576c-286d-e1fe-0848220013b9", + "communicationUser": { + "id": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-576c-286d-e1fe-0848220013b9" + } + }, + "properties": { + "topic": "Chat about new commuication services" + }, + "members": [ + { + "displayName": "Bob", + "memberId": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-576c-286d-e1fe-0848220013b9" + }, + { + "displayName": "John", + "memberId": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-576c-289b-07fd-0848220015ea" + } + ], + "participants": [ + { + "displayName": "Bob", + "participantCommunicationIdentifier": { + "rawId": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-576c-286d-e1fe-0848220013b9", + "communicationUser": { + "id": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-576c-286d-e1fe-0848220013b9" + } + }, + "metadata": { + "key": "value" + } + }, + { + "displayName": "John", + "participantCommunicationIdentifier": { + "rawId": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-576c-289b-07fd-0848220015ea", + "communicationUser": { + "id": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-576c-289b-07fd-0848220015ea" + } + }, + "metadata": { + "key": "value" + } + } + ], + "metadata": { + "key": "value" + }, + "createTime": "2021-02-18T23:47:26.91Z", + "version": 1613692046910, + "recipientId": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-576c-286e-84f5-08482200181c", + "recipientCommunicationIdentifier": { + "rawId": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-576c-286e-84f5-08482200181c", + "communicationUser": { + "id": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-576c-286e-84f5-08482200181c" + } + }, + "transactionId": "zbZt+9h/N0em+XCW2QvyIA.1.1.1.1.1737228330.0.1737490483.1.6", + "threadId": "19:1d594fb1eeb14566903cbc5decb5bf5b@thread.v2" + }, + "specversion": "1.0", + "operationId": "ChatThreadCreatedWithUserEventName", + "title": "ChatThreadCreatedWithUser" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_deleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_deleted.json new file mode 100644 index 0000000000000..0abed374bd4c1 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_deleted.json @@ -0,0 +1,23 @@ +{ + "source": "/subscriptions/{subscription-id}/resourcegroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/deletedBy/{rawId}", + "type": "Microsoft.Communication.ChatThreadDeleted", + "time": "2021-02-20T00:00:42.5428002Z", + "id": "1dbd5237-4823-4fed-980c-8d27c17cf5b0", + "data": { + "deletedByCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5c9e-a300-07fd-084822002266", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5c9e-a300-07fd-084822002266" + } + }, + "deleteTime": "2021-02-19T16:00:42.109802-08:00", + "createTime": "2021-02-19T16:00:39.947-08:00", + "version": 1613779241389, + "threadId": "19:c9e9f3060b884e448671391882066ac3@thread.v2", + "transactionId": "KibptDpcLEeEFnlR7cI3QA.1.1.2.1.848298005.1" + }, + "specversion": "1.0", + "operationId": "ChatThreadDeletedEventName", + "title": "ChatThreadDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_participant_added.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_participant_added.json new file mode 100644 index 0000000000000..40572e2922d7c --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_participant_added.json @@ -0,0 +1,35 @@ +{ + "source": "/subscriptions/{subscription-id}/resourcegroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/participantadded/{rawId}", + "type": "Microsoft.Communication.ChatThreadParticipantAdded", + "time": "2021-02-20T00:54:43.9866454Z", + "id": "3024eb5d-1d71-49d1-878c-7dc3165433d9", + "data": { + "time": "2021-02-19T16:54:42.8622646-08:00", + "addedByCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38a0-88f7-084822002453", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38a0-88f7-084822002453" + } + }, + "participantAdded": { + "displayName": "Bob", + "participantCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38f3-88f7-084822002454", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38f3-88f7-084822002454" + } + }, + "metadata": { + "key": "value" + } + }, + "createTime": "2021-02-19T16:31:54.365-08:00", + "version": 1613782482822, + "threadId": "19:e07c8ddc5bab4c059ea9f11d29b544b6@thread.v2", + "transactionId": "9q6cO7i4FkaZ+5RRVzshVw.1.1.1.1.974913783.1" + }, + "specversion": "1.0", + "operationId": "ChatThreadParticipantAddedEventName", + "title": "ChatThreadParticipantAdded" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_participant_removed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_participant_removed.json new file mode 100644 index 0000000000000..00c5fa0618212 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_participant_removed.json @@ -0,0 +1,35 @@ +{ + "source": "/subscriptions/{subscription-id}/resourcegroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/participantremoved/{rawId}", + "type": "Microsoft.Communication.ChatThreadParticipantRemoved", + "time": "2021-02-20T00:56:18.8567210Z", + "id": "6ed810fd-8776-4b13-81c2-1a0c4f791a07", + "data": { + "time": "2021-02-19T16:56:18.1118825-08:00", + "removedByCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38a0-88f7-084822002453", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38a0-88f7-084822002453" + } + }, + "participantRemoved": { + "displayName": "Shawn", + "participantCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38e6-07fd-084822002467", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5cbb-38e6-07fd-084822002467" + } + }, + "metadata": { + "key": "value" + } + }, + "createTime": "2021-02-19T16:31:54.365-08:00", + "version": 1613782578096, + "threadId": "19:e07c8ddc5bab4c059ea9f11d29b544b6@thread.v2", + "transactionId": "zGCq8IGRr0aEF6COuy7wSA.1.1.1.1.978649284.1" + }, + "specversion": "1.0", + "operationId": "ChatThreadParticipantRemovedEventName", + "title": "ChatThreadParticipantRemoved" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_properties_updated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_properties_updated.json new file mode 100644 index 0000000000000..3e0cd3f5481c9 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_properties_updated.json @@ -0,0 +1,26 @@ +{ + "source": "/subscriptions/{subscription-id}/resourcegroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/editedBy/{rawId}", + "type": "Microsoft.Communication.ChatThreadPropertiesUpdated", + "time": "2021-02-20T00:04:07.8410277Z", + "id": "cf867580-9caf-45be-b49f-ab1cbfcaa59f", + "data": { + "editedByCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5c9e-9e35-07fd-084822002264", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-5c9e-9e35-07fd-084822002264" + } + }, + "editTime": "2021-02-19T16:04:07.7152073-08:00", + "properties": { + "topic": "Talk about new Thread Events in commuication services" + }, + "createTime": "2021-02-19T16:00:40.126-08:00", + "version": 1613779447695, + "threadId": "19:9e8eefe67b3c470a8187b4c2b00240bc@thread.v2", + "transactionId": "GBE9MB2a40KEWzexIg0D3A.1.1.1.1.856359041.1" + }, + "specversion": "1.0", + "operationId": "ChatThreadPropertiesUpdatedEventName", + "title": "ChatThreadPropertiesUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_properties_updated_per_user.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_properties_updated_per_user.json new file mode 100644 index 0000000000000..7da296d593ce7 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_properties_updated_per_user.json @@ -0,0 +1,37 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/editedBy/{rawId}/recipient/{rawId}", + "type": "Microsoft.Communication.ChatThreadPropertiesUpdatedPerUser", + "time": "2021-02-19T00:28:29.5597260Z", + "id": "d57342ff-264e-4a5e-9c54-ef05b7d50082", + "data": { + "editedBy": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d07-83fe-084822000f6e", + "editedByCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d07-83fe-084822000f6e", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7d07-83fe-084822000f6e" + } + }, + "editTime": "2021-02-19T00:28:28.7390282Z", + "properties": { + "topic": "Communication in Azure" + }, + "metadata": { + "key": "value" + }, + "createTime": "2021-02-19T00:28:25.864Z", + "version": 1613694508719, + "recipientId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7caf-07fd-084822001724", + "recipientCommunicationIdentifier": { + "rawId": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7caf-07fd-084822001724", + "communicationUser": { + "id": "8:acs:109f0644-b956-4cd9-87b1-71024f6e2f44_00000008-578d-7caf-07fd-084822001724" + } + }, + "transactionId": "WLXPrnJ/I0+LTj2cwMrNMQ.1.1.1.1.1833369763.1.4", + "threadId": "19:2cc3504c41244d7483208a4f58a1f188@thread.v2" + }, + "specversion": "1.0", + "operationId": "ChatThreadPropertiesUpdatedPerUserEventName", + "title": "ChatThreadPropertiesUpdatedPerUser" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_with_user_deleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_with_user_deleted.json new file mode 100644 index 0000000000000..4c3f085b3cbc5 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/chat_thread_with_user_deleted.json @@ -0,0 +1,31 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "thread/{thread-id}/deletedBy/{rawId}/recipient/{rawId}", + "type": "Microsoft.Communication.ChatThreadWithUserDeleted", + "time": "2021-02-18T23:57:52.1597234Z", + "id": "f5d6750c-c6d7-4da8-bb05-6f3fca6c7295", + "data": { + "deletedBy": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-5772-6473-83fe-084822000e21", + "deletedByCommunicationIdentifier": { + "rawId": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-5772-6473-83fe-084822000e21", + "communicationUser": { + "id": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-5772-6473-83fe-084822000e21" + } + }, + "deleteTime": "2021-02-18T23:57:51.5987591Z", + "createTime": "2021-02-18T23:54:15.683Z", + "version": 1613692578672, + "recipientId": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-5772-647b-e1fe-084822001416", + "recipientCommunicationIdentifier": { + "rawId": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-5772-647b-e1fe-084822001416", + "communicationUser": { + "id": "8:acs:3d703c91-9657-4b3f-b19c-ef9d53f99710_00000008-5772-647b-e1fe-084822001416" + } + }, + "transactionId": "mrliWVUndEmLwkZbeS5KoA.1.1.2.1.1761607918.1.6", + "threadId": "19:5870b8f021d74fd786bf5aeb095da291@thread.v2" + }, + "specversion": "1.0", + "operationId": "ChatThreadWithUserDeletedEventName", + "title": "ChatThreadWithUserDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/client_connection_connected.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/client_connection_connected.json new file mode 100644 index 0000000000000..076064ca5649d --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/client_connection_connected.json @@ -0,0 +1,16 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/signalr-rg/providers/Microsoft.SignalRService/SignalR/signalr-resource", + "subject": "/hub/chat", + "type": "Microsoft.SignalRService.ClientConnectionConnected", + "time": "2019-06-10T18:41:00.9584103Z", + "id": "831e1650-001e-001b-66ab-eeb76e069631", + "data": { + "timestamp": "2019-06-10T18:41:00.9584103Z", + "hubName": "chat", + "connectionId": "crH0uxVSvP61p5wkFY1x1A", + "userId": "user-eymwyo23" + }, + "specversion": "1.0", + "operationId": "ClientConnectionConnectedEventName", + "title": "ClientConnectionConnected" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/client_connection_disconnected.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/client_connection_disconnected.json new file mode 100644 index 0000000000000..d9f457f792e29 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/client_connection_disconnected.json @@ -0,0 +1,17 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/signalr-rg/providers/Microsoft.SignalRService/SignalR/signalr-resource", + "subject": "/hub/chat", + "type": "Microsoft.SignalRService.ClientConnectionDisconnected", + "time": "2019-06-10T18:41:00.9584103Z", + "id": "831e1650-001e-001b-66ab-eeb76e069631", + "data": { + "timestamp": "2019-06-10T18:41:00.9584103Z", + "hubName": "chat", + "connectionId": "crH0uxVSvP61p5wkFY1x1A", + "userId": "user-eymwyo23", + "errorMessage": "Internal server error." + }, + "specversion": "1.0", + "operationId": "ClientConnectionDisconnectedEventName", + "title": "ClientConnectionDisconnected" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/client_created_or_updated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/client_created_or_updated.json new file mode 100644 index 0000000000000..2b4272ce14d79 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/client_created_or_updated.json @@ -0,0 +1,21 @@ +{ + "specversion": "1.0", + "id": "383d1562-c95f-4095-936c-688e72c6b2bb", + "time": "2023-07-29T01:14:35.8928724Z", + "type": "Microsoft.EventGrid.MQTTClientCreatedOrUpdated", + "source": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myrg/providers/Microsoft.EventGrid/namespaces/myns", + "subject": "clients/client1", + "data": { + "createdOn": "2023-07-29T01:14:34.2048108Z", + "updatedOn": "2023-07-29T01:14:34.2048108Z", + "namespaceName": "myns", + "clientName": "client1", + "clientAuthenticationName": "client1", + "state": "Enabled", + "attributes": { + "attribute1": "value1" + } + }, + "operationId": "MQTTClientCreatedOrUpdatedEventName", + "title": "MQTTClientCreatedOrUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/client_deleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/client_deleted.json new file mode 100644 index 0000000000000..c89b48800f367 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/client_deleted.json @@ -0,0 +1,15 @@ +{ + "specversion": "1.0", + "id": "2a93aaf9-66c2-4f8e-9ba3-8d899c10bf17", + "time": "2023-07-29T01:30:52.5620566Z", + "type": "Microsoft.EventGrid.MQTTClientDeleted", + "source": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myrg/providers/Microsoft.EventGrid/namespaces/myns", + "subject": "clients/client1", + "data": { + "namespaceName": "myns", + "clientName": "client1", + "clientAuthenticationName": "client1" + }, + "operationId": "MQTTClientDeletedEventName", + "title": "MQTTClientDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/clientsession_connected.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/clientsession_connected.json new file mode 100644 index 0000000000000..316395e92359d --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/clientsession_connected.json @@ -0,0 +1,16 @@ +{ + "specversion": "1.0", + "id": "5249c38a-a048-46dd-8f60-df34fcdab06c", + "time": "2023-07-29T01:23:49.6454046Z", + "type": "Microsoft.EventGrid.MQTTClientSessionConnected", + "source": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myrg/providers/Microsoft.EventGrid/namespaces/myns", + "subject": "clients/client1/sessions/session1", + "data": { + "namespaceName": "myns", + "clientAuthenticationName": "client1", + "clientSessionName": "session1", + "sequenceNumber": 1 + }, + "operationId": "MQTTClientSessionConnectedEventName", + "title": "MQTTClientSessionConnected" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/clientsession_disconnected.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/clientsession_disconnected.json new file mode 100644 index 0000000000000..6218ca1e913b9 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/clientsession_disconnected.json @@ -0,0 +1,17 @@ +{ + "specversion": "1.0", + "id": "e30e5174-787d-4e19-8812-580148bfcf7b", + "time": "2023-07-29T01:27:40.2446871Z", + "type": "Microsoft.EventGrid.MQTTClientSessionDisconnected", + "source": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myrg/providers/Microsoft.EventGrid/namespaces/myns", + "subject": "clients/client1/sessions/session1", + "data": { + "namespaceName": "myns", + "clientAuthenticationName": "client1", + "clientSessionName": "session1", + "sequenceNumber": 1, + "disconnectionReason": "ClientInitiatedDisconnect" + }, + "operationId": "MQTTClientSessionDisconnectedEventName", + "title": "MQTTClientSessionDisconnected" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/cluster_support_ended.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/cluster_support_ended.json new file mode 100644 index 0000000000000..dffc188104676 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/cluster_support_ended.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.ContainerService/managedClusters/{cluster}", + "subject": "{cluster}", + "type": "Microsoft.ContainerService.ClusterSupportEnded", + "time": "2023-03-29T18:00:00.0000000Z", + "id": "1234567890abcdef1234567890abcdef12345678", + "data": { + "kubernetesVersion": "1.23.15" + }, + "specversion": "1.0", + "operationId": "ClusterSupportEndedEventName", + "title": "ClusterSupportEnded" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/cluster_support_ending.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/cluster_support_ending.json new file mode 100644 index 0000000000000..951f651513ba3 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/cluster_support_ending.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.ContainerService/managedClusters/{cluster}", + "subject": "{cluster}", + "type": "Microsoft.ContainerService.ClusterSupportEnding", + "time": "2023-03-29T18:00:00.0000000Z", + "id": "1234567890abcdef1234567890abcdef12345678", + "data": { + "kubernetesVersion": "1.24.10" + }, + "specversion": "1.0", + "operationId": "ClusterSupportEndingEventName", + "title": "ClusterSupportEnding" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/cluster_updated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/cluster_updated.json new file mode 100644 index 0000000000000..f882398b74e20 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/cluster_updated.json @@ -0,0 +1,22 @@ +{ + "source": "/subscriptions/{subscription_id}/resourceGroups/{resource_group_name}/providers/Microsoft.AVS/privateClouds/{sddc_name}", + "subject": "/clusters/{cluster_name}", + "type": "Microsoft.AVS.ClusterUpdated", + "time": "2023-12-09T16:50:19.9995668-05:00", + "id": "9b87886d-21a5-4af5-8e3e-10c4b8dac73b", + "data": { + "addedHostNames": [ + "esx17-r04.p01.431cc…" + ], + "removedHostNames": [ + "esx15-r01.p01.431cc…" + ], + "inMaintenanceHostNames": [ + "esx01-r03.p01.431cc…" + ], + "operationId": "c8c0b304-2db3-402b-8a6b-06065e0e1755" + }, + "specVersion": "1.0", + "operationId": "ClusterUpdatedEventName", + "title": "ClusterUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/copy_completed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/copy_completed.json new file mode 100644 index 0000000000000..98275184f5574 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/copy_completed.json @@ -0,0 +1,15 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.DataBox/jobs/{your-resource}", + "subject": "/jobs/{your-resource}", + "type": "Microsoft.DataBox.CopyCompleted", + "time": "2022-10-16T02:51:26.4248221Z", + "id": "759c892a-a628-4e48-a116-2e1d54c555ce", + "data": { + "serialNumber": "SampleSerialNumber", + "stageName": "CopyCompleted", + "stageTime": "2022-10-12T19:38:08.0218897Z" + }, + "specVersion": "1.0", + "operationId": "CopyCompletedEventName", + "title": "CopyCompleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/copy_started.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/copy_started.json new file mode 100644 index 0000000000000..b801ddeb44989 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/copy_started.json @@ -0,0 +1,15 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.DataBox/jobs/{your-resource}", + "subject": "/jobs/{your-resource}", + "type": "Microsoft.DataBox.CopyStarted", + "time": "2022-10-16T02:51:26.4248221Z", + "id": "049ec3f6-5b7d-4052-858e-6f4ce6a46570", + "data": { + "serialNumber": "SampleSerialNumber", + "stageName": "CopyStarted", + "stageTime": "2022-10-12T19:38:08.0218897Z" + }, + "specVersion": "1.0", + "operationId": "CopyStartedEventName", + "title": "CopyStarted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/dataset_drift_detected.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/dataset_drift_detected.json new file mode 100644 index 0000000000000..33ad61a57bc98 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/dataset_drift_detected.json @@ -0,0 +1,20 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.MachineLearningServices/workspaces/{workspace-name}", + "subject": "datadrifts/{}/runs/{}", + "type": "Microsoft.MachineLearningServices.DatasetDriftDetected", + "time": "2017-06-26T18:41:00.9584103Z", + "id": "831e1650-001e-001b-66ab-eeb76e069631", + "data": { + "DataDriftId": "01d29aa4-e6a4-470a-9ef3-66660d21f8ef", + "DataDriftName": "myDriftMonitor", + "RunId": "01d29aa4-e6a4-470a-9ef3-66660d21f8ef_1571590300380", + "BaseDatasetId": "3c56d136-0f64-4657-a0e8-5162089a88a3", + "TargetDatasetId": "d7e74d2e-c972-4266-b5fb-6c9c182d2a74", + "DriftCoefficient": 0.8350349068479208, + "StartTime": "2019-07-03T17:00:00-07:00", + "EndTime": "2019-07-04T17:00:00-07:00" + }, + "specversion": "1.0", + "operationId": "DatasetDriftDetectedEventName", + "title": "DatasetDriftDetected" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/deadletter_messages_available_periodic_notification.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/deadletter_messages_available_periodic_notification.json new file mode 100644 index 0000000000000..36d8ffa69db4f --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/deadletter_messages_available_periodic_notification.json @@ -0,0 +1,18 @@ +{ + "source": "/subscriptions/{subscription-id}/resourcegroups/DemoGroup/providers/Microsoft.ServiceBus/namespaces/{namespace}", + "subject": "queues/{queue}", + "type": "Microsoft.ServiceBus.DeadletterMessagesAvailablePeriodicNotifications", + "time": "2018-02-14T05:12:53.4133526Z", + "id": "dede87b0-3656-419c-acaf-70c95ddc60f5", + "data": { + "namespaceName": "{namespace}", + "requestUri": "https://{namespace}.servicebus.windows.net/{queue}/$deadletterqueue/messages/head", + "entityType": "subscriber", + "queueName": "{queue}", + "topicName": null, + "subscriptionName": null + }, + "specversion": "1.0", + "operationId": "DeadletterMessagesAvailablePeriodicNotificationsEventName", + "title": "DeadletterMessagesAvailablePeriodicNotifications" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/deadletter_messages_available_with_no_listeners.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/deadletter_messages_available_with_no_listeners.json new file mode 100644 index 0000000000000..987421be786bd --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/deadletter_messages_available_with_no_listeners.json @@ -0,0 +1,18 @@ +{ + "source": "/subscriptions/{subscription-id}/resourcegroups/{your-rg}/providers/Microsoft.ServiceBus/namespaces/{your-service-bus-namespace}", + "subject": "topics/{your-service-bus-topic}/subscriptions/{your-service-bus-subscription}", + "type": "Microsoft.ServiceBus.DeadletterMessagesAvailableWithNoListeners", + "time": "2018-02-14T05:12:53.4133526Z", + "id": "dede87b0-3656-419c-acaf-70c95ddc60f5", + "data": { + "namespaceName": "YOUR SERVICE BUS NAMESPACE WILL SHOW HERE", + "requestUri": "https://{your-service-bus-namespace}.servicebus.windows.net/{your-topic}/subscriptions/{your-service-bus-subscription}/$deadletterqueue/messages/head", + "entityType": "subscriber", + "queueName": "QUEUE NAME IF QUEUE", + "topicName": "TOPIC NAME IF TOPIC", + "subscriptionName": "SUBSCRIPTION NAME" + }, + "specversion": "1.0", + "operationId": "DeadletterMessagesAvailableWithNoListenersEventName", + "title": "DeadletterMessagesAvailableWithNoListeners" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/device_connected.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/device_connected.json new file mode 100644 index 0000000000000..f43cb336e8df6 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/device_connected.json @@ -0,0 +1,18 @@ +{ + "source": "/SUBSCRIPTIONS/{subscription-id}/RESOURCEGROUPS{resource-group}/PROVIDERS/MICROSOFT.DEVICES/IOTHUBS/{hub—name}", + "subject": "devices/LogicAppTestDevice", + "type": "Microsoft.Devices.DeviceConnected", + "time": "2018-06-02T19:17:44.4383997Z", + "id": "f6bbf8f4-d365-520d-a878-17bf7238abd8", + "data": { + "deviceConnectionStateEventInfo": { + "sequenceNumber": "000000000000000001D4132452F67CE200000002000000000000000000000001" + }, + "hubName": "egtesthub1", + "deviceId": "LogicAppTestDevice", + "moduleId": "DeviceModuleID" + }, + "specversion": "1.0", + "operationId": "DeviceConnectedEventName", + "title": "DeviceConnected" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/device_created.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/device_created.json new file mode 100644 index 0000000000000..dcf8df794805e --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/device_created.json @@ -0,0 +1,44 @@ +{ + "source": "/SUBSCRIPTIONS/{subscription-ID}/RESOURCEGROUPS/{resource-group}/PROVIDERS/MICROSOFT.DEVICES/IOTHUBS/{hub-name}", + "subject": "devices/LogicAppTestDevice", + "type": "Microsoft.Devices.DeviceCreated", + "time": "2018-01-02T19:17:44.4383997Z", + "id": "56afc886-767b-d359-d59e-0da7877166b2", + "data": { + "twin": { + "deviceId": "LogicAppTestDevice", + "etag": "AAAAAAAAAAE=", + "deviceEtag": "null", + "status": "enabled", + "statusUpdateTime": "0001-01-01T00:00:00", + "connectionState": "Disconnected", + "lastActivityTime": "0001-01-01T00:00:00", + "cloudToDeviceMessageCount": 0, + "authenticationType": "sas", + "x509Thumbprint": { + "primaryThumbprint": null, + "secondaryThumbprint": null + }, + "version": 2, + "properties": { + "desired": { + "$metadata": { + "$lastUpdated": "2018-01-02T19:17:44.4383997Z" + }, + "$version": 1 + }, + "reported": { + "$metadata": { + "$lastUpdated": "2018-01-02T19:17:44.4383997Z" + }, + "$version": 1 + } + } + }, + "hubName": "egtesthub1", + "deviceId": "LogicAppTestDevice" + }, + "specversion": "1.0", + "operationId": "DeviceCreatedEventName", + "title": "DeviceCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/device_telemetry.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/device_telemetry.json new file mode 100644 index 0000000000000..d406fff9c2f59 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/device_telemetry.json @@ -0,0 +1,30 @@ +{ + "source": "/SUBSCRIPTIONS/{subscription-ID}/RESOURCEGROUPS/{resource-group}/PROVIDERS/MICROSOFT.DEVICES/IOTHUBS/{hub-name}", + "subject": "devices/LogicAppTestDevice", + "type": "Microsoft.Devices.DeviceTelemetry", + "time": "2019-01-07T20:58:30.4800000Z", + "id": "9af86784-8d40-fe2g-8b2a-bab65e106785", + "data": { + "body": { + "Weather": { + "Temperature": 900 + }, + "Location": "USA" + }, + "properties": { + "Status": "Active" + }, + "systemProperties": { + "iothub-content-type": "application/json", + "iothub-content-encoding": "utf-8", + "iothub-connection-device-id": "d1", + "iothub-connection-auth-method": "{\"scope\":\"device\",\"type\":\"sas\",\"issuer\":\"iothub\",\"acceptingIpFilterRule\":null}", + "iothub-connection-auth-generation-id": "123455432199234570", + "iothub-enqueuedtime": "2019-01-07T20:58:30.48Z", + "iothub-message-source": "Telemetry" + } + }, + "specversion": "1.0", + "operationId": "DeviceTelemetryEventName", + "title": "DeviceTelemetry" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/dicom_image_created.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/dicom_image_created.json new file mode 100644 index 0000000000000..41ce40083bc69 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/dicom_image_created.json @@ -0,0 +1,18 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.HealthcareApis/workspaces/{workspace-name}", + "subject": "{dicom-account}.dicom.azurehealthcareapis.com/v1/partitions/Microsoft.Default/studies/1.2.3.4.3/series/1.2.3.4.3.9423673/instances/1.3.6.1.4.1.45096.2.296485376.2210.1633373143.864442", + "type": "Microsoft.HealthcareApis.DicomImageCreated", + "time": "2022-09-15T01:14:04.5613214Z", + "id": "d621839d-958b-4142-a638-bb966b4f7dfd", + "data": { + "partitionName": "Microsoft.Default", + "imageStudyInstanceUid": "1.2.3.4.3", + "imageSeriesInstanceUid": "1.2.3.4.3.9423673", + "imageSopInstanceUid": "1.3.6.1.4.1.45096.2.296485376.2210.1633373143.864442", + "serviceHostName": "{dicom-account}.dicom.azurehealthcareapis.com", + "sequenceNumber": 1 + }, + "specversion": "1.0", + "operationId": "DicomImageCreatedEventName", + "title": "DicomImageCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/dicom_image_deleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/dicom_image_deleted.json new file mode 100644 index 0000000000000..aae916c2f6a1a --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/dicom_image_deleted.json @@ -0,0 +1,18 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.HealthcareApis/workspaces/{workspace-name}", + "subject": "{dicom-account}.dicom.azurehealthcareapis.com/v1/partitions/Microsoft.Default/studies/1.2.3.4.3/series/1.2.3.4.3.9423673/instances/1.3.6.1.4.1.45096.2.296485376.2210.1633373143.864442", + "type": "Microsoft.HealthcareApis.DicomImageDeleted", + "time": "2022-09-15T01:14:04.5613214Z", + "id": "eac1c1a0-ffa8-4b28-97cc-1d8b9a0a6021", + "data": { + "partitionName": "Microsoft.Default", + "imageStudyInstanceUid": "1.2.3.4.3", + "imageSeriesInstanceUid": "1.2.3.4.3.9423673", + "imageSopInstanceUid": "1.3.6.1.4.1.45096.2.296485376.2210.1633373143.864442", + "serviceHostName": "{dicom-account}.dicom.azurehealthcareapis.com", + "sequenceNumber": 2 + }, + "specversion": "1.0", + "operationId": "DicomImageDeletedEventName", + "title": "DicomImageDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/dicom_image_updated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/dicom_image_updated.json new file mode 100644 index 0000000000000..930c742cdd5ac --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/dicom_image_updated.json @@ -0,0 +1,18 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.HealthcareApis/workspaces/{workspace-name}", + "subject": "{dicom-account}.dicom.azurehealthcareapis.com/v1/partitions/Microsoft.Default/studies/1.2.3.4.3/series/1.2.3.4.3.9423673/instances/1.3.6.1.4.1.45096.2.296485376.2210.1633373143.864442", + "type": "Microsoft.HealthcareApis.DicomImageUpdated", + "time": "2022-09-15T01:14:04.5613214Z", + "id": "7e8aca04-e815-4387-82a8-9fcf15a3114b", + "data": { + "partitionName": "Microsoft.Default", + "imageStudyInstanceUid": "1.2.3.4.3", + "imageSeriesInstanceUid": "1.2.3.4.3.9423673", + "imageSopInstanceUid": "1.3.6.1.4.1.45096.2.296485376.2210.1633373143.864442", + "serviceHostName": "{dicom-account}.dicom.azurehealthcareapis.com", + "sequenceNumber": 1 + }, + "specversion": "1.0", + "operationId": "DicomImageUpdatedEventName", + "title": "DicomImageUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/directory_created.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/directory_created.json new file mode 100644 index 0000000000000..13490d6b14ff8 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/directory_created.json @@ -0,0 +1,33 @@ +{ + "source": "/subscriptions/faa080af-c1d8-40ad-9cce-e1a450ca5b57/resourceGroups/jolov/providers/Microsoft.Storage/storageAccounts/jolovdfs", + "subject": "/blobServices/default/containers/gaocontainer/blobs/gaodir", + "type": "Microsoft.Storage.DirectoryCreated", + "time": "2021-08-16T05:36:06.1613834Z", + "id": "d706a817-d01f-0002-3e60-92fcb5068c19", + "data": { + "api": "CreateDirectory", + "requestId": "d706a817-d01f-0002-3e60-92fcb5000000", + "eTag": "0x8D96077BE69372E", + "directoryProperties": [ + { + "acl": [ + { + "access": "u::rwx,g::rx,o::", + "permission": "0750", + "owner": "$superuser", + "group": "$superuser" + } + ] + } + ], + "blobUrl": "https://jolovdfs.blob.core.windows.net/gaocontainer/gaodir", + "url": "https://jolovdfs.dfs.core.windows.net/gaocontainer/gaodir", + "sequencer": "00000000000000000000000000000102000000000001e192", + "storageDiagnostics": { + "batchId": "e4b5c5d5-b727-4429-b35f-babb83eb15f1" + } + }, + "specversion": "1.0", + "operationId": "DirectoryCreatedEventName", + "title": "DirectoryCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/directory_deleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/directory_deleted.json new file mode 100644 index 0000000000000..773dc9815252a --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/directory_deleted.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/faa080af-c1d8-40ad-9cce-e1a450ca5b57/resourceGroups/jolov/providers/Microsoft.Storage/storageAccounts/jolovdfs", + "subject": "/blobServices/default/containers/gaocontainer/blobs/gaodir", + "type": "Microsoft.Storage.DirectoryDeleted", + "time": "2021-08-16T05:36:57.4835481Z", + "id": "45a3a9fa-001f-0001-1b60-921dd1069801", + "data": { + "api": "DeleteDirectory", + "requestId": "45a3a9fa-001f-0001-1b60-921dd1000000", + "blobUrl": "https://jolovdfs.blob.core.windows.net/gaocontainer/gaodir", + "url": "https://jolovdfs.dfs.core.windows.net/gaocontainer/gaodir", + "recursive": "false", + "sequencer": "00000000000000000000000000000102000000000001e1a4", + "storageDiagnostics": { + "batchId": "c41d46e2-dfa5-4dd1-832a-9a63bed28ebc" + } + }, + "specversion": "1.0", + "operationId": "DirectoryDeletedEventName", + "title": "DirectoryDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/directory_renamed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/directory_renamed.json new file mode 100644 index 0000000000000..bb6cdab85b2aa --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/directory_renamed.json @@ -0,0 +1,22 @@ +{ + "source": "/subscriptions/faa080af-c1d8-40ad-9cce-e1a450ca5b57/resourceGroups/jolov/providers/Microsoft.Storage/storageAccounts/jolovdfs", + "subject": "/blobServices/default/containers/gaocontainer/blobs/gaonewdir", + "type": "Microsoft.Storage.DirectoryRenamed", + "time": "2021-08-16T05:38:05.1425527Z", + "id": "45a3aa46-001f-0001-2d60-921dd1062e11", + "data": { + "api": "RenameDirectory", + "requestId": "45a3aa46-001f-0001-2d60-921dd1000000", + "destinationBlobUrl": "https://jolovdfs.blob.core.windows.net/gaocontainer/gaonewdir", + "sourceBlobUrl": "https://jolovdfs.blob.core.windows.net/gaocontainer/gaoname", + "destinationUrl": "https://jolovdfs.dfs.core.windows.net/gaocontainer/gaonewdir", + "sourceUrl": "https://jolovdfs.dfs.core.windows.net/gaocontainer/gaoname", + "sequencer": "00000000000000000000000000000102000000000001e1c6", + "storageDiagnostics": { + "batchId": "5f991456-5dcf-4b1b-9d49-562ee2b0757f" + } + }, + "specversion": "1.0", + "operationId": "DirectoryRenamedEventName", + "title": "DirectoryRenamed" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/email_delivery_report_received.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/email_delivery_report_received.json new file mode 100644 index 0000000000000..bf96f5e6b66f9 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/email_delivery_report_received.json @@ -0,0 +1,17 @@ +{ + "id": "5f04f77c-2a6a-43bd-9b74-576a64c01f9e", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "sender/test2@contoso.org/message/950850f5-bcdf-4315-b77a-6447cf56fac9", + "data": { + "sender": "test2@contoso.org", + "recipient": "test1@contoso.com", + "messageId": "950850f5-bcdf-4315-b77a-6447cf56fac9", + "status": "delivered", + "deliveryAttemptTimeStamp": "2023-02-09T19:46:12.2480265+00:00" + }, + "type": "Microsoft.Communication.EmailDeliveryReportReceived", + "time": "2023-02-09T19:46:12.2478002Z", + "specversion": "1.0", + "operationId": "EmailDeliveryReportReceivedEventName", + "title": "EmailDeliveryReportReceived" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/email_engagement_tracking_report_received.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/email_engagement_tracking_report_received.json new file mode 100644 index 0000000000000..85f10a93a9650 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/email_engagement_tracking_report_received.json @@ -0,0 +1,18 @@ +{ + "id": "b69d6528-f09f-4ba7-93f9-dab8baf98d0e", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "sender/test2@contoso.org/message/fe26a737-6941-410c-b126-7eacbe4035d1", + "data": { + "sender": "test2@contoso.org", + "messageId": "fe26a737-6941-410c-b126-7eacbe4035d1", + "userActionTimeStamp": "2023-02-09T20:07:22.745555+00:00", + "engagementContext": "www.example.com", + "userAgent": "Desktop", + "engagementType": "click" + }, + "type": "Microsoft.Communication.EmailEngagementTrackingReportReceived", + "time": "2023-02-09T20:07:22.7453611Z", + "specversion": "1.0", + "operationId": "EmailEngagementTrackingReportReceivedEventName", + "title": "EmailEngagementTrackingReportReceived" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/export_rdb_completed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/export_rdb_completed.json new file mode 100644 index 0000000000000..0a9a8071c3ede --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/export_rdb_completed.json @@ -0,0 +1,15 @@ +{ + "source": "/subscriptions/{subscription_id}/resourceGroups/{resource_group_name}/providers/Microsoft.Cache/Redis/{cache_name}", + "subject": "ExportRDBCompleted", + "type": "Microsoft.Cache.ExportRDBCompleted", + "time": "2020-12-09T13:50:19.9995668-08:00", + "id": "9b87886d-21a5-4af5-8e3e-10c4b8dac73b", + "data": { + "name": "ExportRDBCompleted", + "timestamp": "2020-12-09T13:50:19.9995668-08:00", + "status": "Succeeded" + }, + "specversion": "1.0", + "operationId": "ExportRDBCompletedEventName", + "title": "ExportRDBCompleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/fhir_resource_created.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/fhir_resource_created.json new file mode 100644 index 0000000000000..a1510809bc920 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/fhir_resource_created.json @@ -0,0 +1,16 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.HealthcareApis/workspaces/{workspace-name}", + "subject": "{fhir-account}.fhir.azurehealthcareapis.com/Patient/e0a1f743-1a70-451f-830e-e96477163902", + "type": "Microsoft.HealthcareApis.FhirResourceCreated", + "time": "2021-09-08T01:14:04.5613214Z", + "id": "e4c7f556-d72c-e7f7-1069-1e82ac76ab41", + "data": { + "resourceType": "Patient", + "resourceFhirAccount": "{fhir-account}.fhir.azurehealthcareapis.com", + "resourceFhirId": "e0a1f743-1a70-451f-830e-e96477163902", + "resourceVersionId": 1 + }, + "specversion": "1.0", + "operationId": "FhirResourceCreatedEventName", + "title": "FhirResourceCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/fhir_resource_deleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/fhir_resource_deleted.json new file mode 100644 index 0000000000000..9fbe50d21eee2 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/fhir_resource_deleted.json @@ -0,0 +1,16 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.HealthcareApis/workspaces/{workspace-name}", + "subject": "{fhir-account}.fhir.azurehealthcareapis.com/Patient/e0a1f743-1a70-451f-830e-e96477163902", + "type": "Microsoft.HealthcareApis.FhirResourceDeleted", + "time": "2021-09-08T01:31:58.5175837Z", + "id": "ef289b93-3159-b833-3a44-dc6b86ed1a8a", + "data": { + "resourceType": "Patient", + "resourceFhirAccount": "{fhir-account}.fhir.azurehealthcareapis.com", + "resourceFhirId": "e0a1f743-1a70-451f-830e-e96477163902", + "resourceVersionId": 3 + }, + "specversion": "1.0", + "operationId": "FhirResourceDeletedEventName", + "title": "FhirResourceDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/fhir_resource_updated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/fhir_resource_updated.json new file mode 100644 index 0000000000000..29b409b82e27e --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/fhir_resource_updated.json @@ -0,0 +1,16 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.HealthcareApis/workspaces/{workspace-name}", + "subject": "{fhir-account}.fhir.azurehealthcareapis.com/Patient/e0a1f743-1a70-451f-830e-e96477163902", + "type": "Microsoft.HealthcareApis.FhirResourceUpdated", + "time": "2021-09-08T01:29:12.0618739Z", + "id": "634bd421-8467-f23c-b8cb-f6a31e41c32a", + "data": { + "resourceType": "Patient", + "resourceFhirAccount": "{fhir-account}.fhir.azurehealthcareapis.com", + "resourceFhirId": "e0a1f743-1a70-451f-830e-e96477163902", + "resourceVersionId": 2 + }, + "specversion": "1.0", + "operationId": "FhirResourceUpdatedEventName", + "title": "FhirResourceUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayApiAdded.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayApiAdded.json new file mode 100644 index 0000000000000..5cb4419dc19d4 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayApiAdded.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/gateways/{gateway-name}/apis/example-api", + "type": "Microsoft.ApiManagement.GatewayAPIAdded", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/gateways/{gateway-name}/apis/example-api" + }, + "specVersion": "1.0", + "operationId": "GatewayAPIAddedEventName", + "title": "GatewayAPIAdded" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayApiRemoved.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayApiRemoved.json new file mode 100644 index 0000000000000..f8680f8d25695 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayApiRemoved.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/gateways/{gateway-name}/apis/example-api", + "type": "Microsoft.ApiManagement.GatewayAPIRemoved", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/gateways/{gateway-name}/apis/example-api" + }, + "specVersion": "1.0", + "operationId": "GatewayAPIRemovedEventName", + "title": "GatewayAPIRemoved" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayCertificateAuthorityCreated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayCertificateAuthorityCreated.json new file mode 100644 index 0000000000000..79c80577a672c --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayCertificateAuthorityCreated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/gateways/{gateway-name}/certificateAuthorities/example-ca", + "type": "Microsoft.ApiManagement.GatewayCertificateAuthorityCreated", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/gateways/{gateway-name}/certificateAuthorities/example-ca" + }, + "specVersion": "1.0", + "operationId": "GatewayCertificateAuthorityCreatedEventName", + "title": "GatewayCertificateAuthorityCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayCertificateAuthorityDeleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayCertificateAuthorityDeleted.json new file mode 100644 index 0000000000000..51e0f8b766207 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayCertificateAuthorityDeleted.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/gateways/{gateway-name}/certificateAuthorities/example-ca", + "type": "Microsoft.ApiManagement.GatewayCertificateAuthorityDeleted", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/gateways/{gateway-name}/certificateAuthorities/example-ca" + }, + "specVersion": "1.0", + "operationId": "GatewayCertificateAuthorityDeletedEventName", + "title": "GatewayCertificateAuthorityDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayCertificateAuthorityUpdated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayCertificateAuthorityUpdated.json new file mode 100644 index 0000000000000..8e8f17e5c36ac --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayCertificateAuthorityUpdated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/gateways/{gateway-name}/certificateAuthorities/example-ca", + "type": "Microsoft.ApiManagement.GatewayCertificateAuthorityUpdated", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/gateways/{gateway-name}/certificateAuthorities/example-ca" + }, + "specVersion": "1.0", + "operationId": "GatewayCertificateAuthorityUpdatedEventName", + "title": "GatewayCertificateAuthorityUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayCreated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayCreated.json new file mode 100644 index 0000000000000..5d5a7d9665b19 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayCreated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/gateways/{gateway-name}", + "type": "Microsoft.ApiManagement.GatewayCreated", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/gateways/{gateway-name}" + }, + "specVersion": "1.0", + "operationId": "GatewayCreatedEventName", + "title": "GatewayCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayDeleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayDeleted.json new file mode 100644 index 0000000000000..3571b41d4b5e7 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayDeleted.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/gateways/{gateway-name}", + "type": "Microsoft.ApiManagement.GatewayDeleted", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/gateways/{gateway-name}" + }, + "specVersion": "1.0", + "operationId": "GatewayDeletedEventName", + "title": "GatewayDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayHostnameConfigurationCreated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayHostnameConfigurationCreated.json new file mode 100644 index 0000000000000..6402ccd04430c --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayHostnameConfigurationCreated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/gateways/{gateway-name}/hostnameConfigurations/example-hostname", + "type": "Microsoft.ApiManagement.GatewayHostnameConfigurationCreated", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/gateways/{gateway-name}/hostnameConfigurations/example-hostname" + }, + "specVersion": "1.0", + "operationId": "GatewayHostnameConfigurationCreatedEventName", + "title": "GatewayHostnameConfigurationCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayHostnameConfigurationDeleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayHostnameConfigurationDeleted.json new file mode 100644 index 0000000000000..4ab4a6e310916 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayHostnameConfigurationDeleted.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/gateways/{gateway-name}/hostnameConfigurations/example-hostname", + "type": "Microsoft.ApiManagement.GatewayHostnameConfigurationDeleted", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/gateways/{gateway-name}/hostnameConfigurations/example-hostname" + }, + "specVersion": "1.0", + "operationId": "GatewayHostnameConfigurationDeletedEventName", + "title": "GatewayHostnameConfigurationDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayHostnameConfigurationUpdated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayHostnameConfigurationUpdated.json new file mode 100644 index 0000000000000..3280423d11f55 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayHostnameConfigurationUpdated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/gateways/{gateway-name}/hostnameConfigurations/example-hostname", + "type": "Microsoft.ApiManagement.GatewayHostnameConfigurationUpdated", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/gateways/{gateway-name}/hostnameConfigurations/example-hostname" + }, + "specVersion": "1.0", + "operationId": "GatewayHostnameConfigurationUpdatedEventName", + "title": "GatewayHostnameConfigurationUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayUpdated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayUpdated.json new file mode 100644 index 0000000000000..417deb41bbbeb --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/gatewayUpdated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/gateways/{gateway-name}", + "type": "Microsoft.ApiManagement.GatewayUpdated", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/gateways/{gateway-name}" + }, + "specVersion": "1.0", + "operationId": "GatewayUpdatedEventName", + "title": "GatewayUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/geofence_entered.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/geofence_entered.json new file mode 100644 index 0000000000000..0b9b6c545b11a --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/geofence_entered.json @@ -0,0 +1,24 @@ +{ + "source": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Maps/accounts/{accountName}", + "subject": "/spatial/geofence/udid/{udid}/id/{eventId}", + "type": "Microsoft.Maps.GeofenceEntered", + "time": "2018-11-08T00:54:17.6408601Z", + "id": "7f8446e2-1ac7-4234-8425-303726ea3981", + "data": { + "geometries": [ + { + "deviceId": "device_1", + "udId": "1a13b444-4acf-32ab-ce4e-9ca4af20b169", + "geometryId": "2", + "distance": -999.0, + "nearestLat": 47.618786, + "nearestLon": -122.132151 + } + ], + "expiredGeofenceGeometryId": [], + "invalidPeriodGeofenceGeometryId": [] + }, + "specversion": "1.0", + "operationId": "GeofenceEnteredEventName", + "title": "GeofenceEntered" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/geofence_result.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/geofence_result.json new file mode 100644 index 0000000000000..ec9d47e66e3ea --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/geofence_result.json @@ -0,0 +1,32 @@ +{ + "source": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Maps/accounts/{accountName}", + "subject": "/spatial/geofence/udid/{udid}/id/{eventId}", + "type": "Microsoft.Maps.GeofenceResult", + "time": "2018-11-08T00:52:08.0954283Z", + "id": "451675de-a67d-4929-876c-5c2bf0b2c000", + "data": { + "geometries": [ + { + "deviceId": "device_1", + "udId": "1a13b444-4acf-32ab-ce4e-9ca4af20b169", + "geometryId": "1", + "distance": 999.0, + "nearestLat": 47.609833, + "nearestLon": -122.148274 + }, + { + "deviceId": "device_1", + "udId": "1a13b444-4acf-32ab-ce4e-9ca4af20b169", + "geometryId": "2", + "distance": 999.0, + "nearestLat": 47.621954, + "nearestLon": -122.131841 + } + ], + "expiredGeofenceGeometryId": [], + "invalidPeriodGeofenceGeometryId": [] + }, + "specversion": "1.0", + "operationId": "GeofenceResultEventName", + "title": "GeofenceResult" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/image_deleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/image_deleted.json new file mode 100644 index 0000000000000..0402aca558e82 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/image_deleted.json @@ -0,0 +1,30 @@ +{ + "source": "/subscriptions/faa080af-c1d8-40ad-9cce-e1a450ca5b57/resourceGroups/jolov/providers/Microsoft.ContainerRegistry/registries/jolovcr", + "subject": "samples/nginx", + "type": "Microsoft.ContainerRegistry.ImageDeleted", + "time": "2021-09-08T06:49:40.5342401Z", + "id": "6fdef14c-2594-41e8-9156-c0376eb0a190", + "data": { + "id": "6fdef14c-2594-41e8-9156-c0376eb0a190", + "timestamp": "2021-09-08T06:49:40.1850248Z", + "action": "delete", + "location": "westus", + "target": { + "mediaType": "application/vnd.docker.distribution.manifest.v2+json", + "digest": "sha256:57a94fc99816c6aa225678b738ac40d85422e75dbb96115f1bb9b6ed77176166", + "repository": "samples/nginx" + }, + "request": { + "id": "62a60cbd-1bfc-4742-b013-ed7098922ca6", + "host": "jolovcr.azurecr.io", + "method": "DELETE", + "useragent": "python-requests/2.22.0" + }, + "connectedRegistry": { + "name": "edge1" + } + }, + "specversion": "1.0", + "operationId": "ImageDeletedEventName", + "title": "ImageDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/image_pushed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/image_pushed.json new file mode 100644 index 0000000000000..9a6cf78d1b6ac --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/image_pushed.json @@ -0,0 +1,33 @@ +{ + "source": "/subscriptions/faa080af-c1d8-40ad-9cce-e1a450ca5b57/resourceGroups/jolov/providers/Microsoft.ContainerRegistry/registries/jolovcr", + "subject": "samples/nginx:latest", + "type": "Microsoft.ContainerRegistry.ImagePushed", + "time": "2021-09-08T06:37:45.6609948Z", + "id": "c25fdb80-ebbd-4dd0-a29c-a7349e6388f6", + "data": { + "id": "c25fdb80-ebbd-4dd0-a29c-a7349e6388f6", + "timestamp": "2021-09-08T06:37:45.4681009Z", + "action": "push", + "location": "westus", + "target": { + "mediaType": "application/vnd.docker.distribution.manifest.v2+json", + "size": 1153, + "digest": "sha256:57a94fc99816c6aa225678b738ac40d85422e75dbb96115f1bb9b6ed77176166", + "length": 1153, + "repository": "samples/nginx", + "tag": "latest" + }, + "request": { + "id": "9f8fa9d4-5b86-4066-b805-e406f321c7d6", + "host": "jolovcr.azurecr.io", + "method": "PUT", + "useragent": "docker/20.10.7 go/go1.13.15 git-commit/b0f5bc3 kernel/5.10.16.3-microsoft-standard-WSL2 os/linux arch/amd64 UpstreamClient(Docker-Client/20.10.7 \\(windows\\))" + }, + "connectedRegistry": { + "name": "edge1" + } + }, + "specversion": "1.0", + "operationId": "ImagePushedEventName", + "title": "ImagePushed" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/import_rdb_completed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/import_rdb_completed.json new file mode 100644 index 0000000000000..e28f13db55cbb --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/import_rdb_completed.json @@ -0,0 +1,15 @@ +{ + "source": "/subscriptions/{subscription_id}/resourceGroups/{resource_group_name}/providers/Microsoft.Cache/Redis/{cache_name}", + "subject": "ImportRDBCompleted", + "type": "Microsoft.Cache.ImportRDBCompleted", + "time": "2020-12-09T13:50:19.9995668-08:00", + "id": "9b87886d-21a5-4af5-8e3e-10c4b8dac73b", + "data": { + "name": "ImportRDBCompleted", + "timestamp": "2020-12-09T13:50:19.9995668-08:00", + "status": "Succeeded" + }, + "specversion": "1.0", + "operationId": "ImportRDBCompletedEventName", + "title": "ImportRDBCompleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/incoming_call.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/incoming_call.json new file mode 100644 index 0000000000000..69f72411a38d2 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/incoming_call.json @@ -0,0 +1,40 @@ +{ + "id": "e80026e7-e298-46ba-bc42-dab0eda92581", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "/caller/{caller-id}/recipient/{recipient-id}", + "data": { + "to": { + "kind": "communicationUser", + "rawId": "{recipient-id}", + "communicationUser": { + "id": "{recipient-id}" + } + }, + "from": { + "kind": "communicationUser", + "rawId": "{caller-id}", + "communicationUser": { + "id": "{caller-id}" + } + }, + "serverCallId": "{server-call-id}", + "callerDisplayName": "VOIP Caller", + "customContext": { + "sipHeaders": { + "userToUser": "616d617a6f6e5f6368696;encoding=hex", + "X-MS-Custom-myheader1": "35567842", + "X-MS-Custom-myheader2": "customsipheadervalue" + }, + "voipHeaders": { + "customHeader": "customValue" + } + }, + "incomingCallContext": "{incoming-call-contextValue}", + "correlationId": "correlationId" + }, + "type": "Microsoft.Communication.IncomingCall", + "specversion": "1.0", + "time": "2023-04-04T17:18:42.5542219Z", + "operationId": "IncomingCallEventName", + "title": "IncomingCall" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/keyvalue_deleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/keyvalue_deleted.json new file mode 100644 index 0000000000000..b2316852bb7cb --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/keyvalue_deleted.json @@ -0,0 +1,16 @@ +{ + "source": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/microsoft.appconfiguration/configurationstores/contoso", + "subject": "https://contoso.azconfig.io/kv/Foo?label=FizzBuzz", + "type": "Microsoft.AppConfiguration.KeyValueDeleted", + "time": "2019-05-31T20:05:03.0000000Z", + "id": "84e17ea4-66db-4b54-8050-df8f7763f87b", + "data": { + "key": "Foo", + "label": "FizzBuzz", + "etag": "FnUExLaj2moIi4tJX9AXn9sakm0", + "syncToken": "zAJw6V16=Njo1IzUxNjQ2NzM=;sn=5164673" + }, + "specversion": "1.0", + "operationId": "KeyValueDeletedEventName", + "title": "KeyValueDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/keyvalue_modified.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/keyvalue_modified.json new file mode 100644 index 0000000000000..a71f576b04f24 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/keyvalue_modified.json @@ -0,0 +1,16 @@ +{ + "source": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/microsoft.appconfiguration/configurationstores/contoso", + "subject": "https://contoso.azconfig.io/kv/Foo?label=FizzBuzz", + "type": "Microsoft.AppConfiguration.KeyValueModified", + "time": "2019-05-31T20:05:03.0000000Z", + "id": "84e17ea4-66db-4b54-8050-df8f7763f87b", + "data": { + "key": "Foo", + "label": "FizzBuzz", + "etag": "FnUExLaj2moIi4tJX9AXn9sakm0", + "syncToken": "zAJw6V16=Njo1IzUxNjQ2NzM=;sn=5164673" + }, + "specversion": "1.0", + "operationId": "KeyValueModifiedEventName", + "title": "KeyValueModified" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/model_deployed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/model_deployed.json new file mode 100644 index 0000000000000..b79d8910fffb4 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/model_deployed.json @@ -0,0 +1,22 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.MachineLearningServices/workspaces/{workspace-name}", + "subject": "endpoints/my-sklearn-service", + "type": "Microsoft.MachineLearningServices.ModelDeployed", + "time": "2017-06-26T18:41:00.9584103Z", + "id": "831e1650-001e-001b-66ab-eeb76e069631", + "data": { + "ServiceName": "my-sklearn-service", + "ServiceComputeType": "ACI", + "ModelIds": "sklearn_regression_model:1,sklearn_regression_model:2", + "ServiceTags": { + "area": "diabetes", + "type": "regression" + }, + "ServiceProperties": { + "type": "test" + } + }, + "specversion": "1.0", + "operationId": "ModelDeployedEventName", + "title": "ModelDeployed" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/model_registered.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/model_registered.json new file mode 100644 index 0000000000000..b5304d632c959 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/model_registered.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.MachineLearningServices/workspaces/{workspace-name}", + "subject": "models/sklearn_regression_model:20", + "type": "Microsoft.MachineLearningServices.ModelRegistered", + "time": "2017-06-26T18:41:00.9584103Z", + "id": "831e1650-001e-001b-66ab-eeb76e069631", + "data": { + "ModelName": "sklearn_regression_model", + "ModelVersion": 20, + "ModelTags": { + "area": "diabetes", + "type": "regression" + }, + "ModelProperties": { + "type": "test" + } + }, + "specversion": "1.0", + "operationId": "ModelRegisteredEventName", + "title": "ModelRegistered" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/new_kubernetes_version_available.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/new_kubernetes_version_available.json new file mode 100644 index 0000000000000..e6ad56a9c30dd --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/new_kubernetes_version_available.json @@ -0,0 +1,16 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.ContainerService/managedClusters/{cluster}", + "subject": "{cluster}", + "type": "Microsoft.ContainerService.NewKubernetesVersionAvailable", + "time": "2021-07-01T04:52:57.0000000Z", + "id": "1234567890abcdef1234567890abcdef12345678", + "data": { + "latestSupportedKubernetesVersion": "1.20.7", + "latestStableKubernetesVersion": "1.19.11", + "lowestMinorKubernetesVersion": "1.18.19", + "latestPreviewKubernetesVersion": "1.21.1" + }, + "specversion": "1.0", + "operationId": "NewKubernetesVersionAvailableEventName", + "title": "NewKubernetesVersionAvailable" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/node_pool_rolling_failed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/node_pool_rolling_failed.json new file mode 100644 index 0000000000000..ac6019f4d081a --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/node_pool_rolling_failed.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.ContainerService/managedClusters/{cluster}", + "subject": "{cluster}", + "type": "Microsoft.ContainerService.NodePoolRollingFailed", + "time": "2023-03-29T18:00:00.0000000Z", + "id": "1234567890abcdef1234567890abcdef12345678", + "data": { + "nodePoolName": "nodepool1" + }, + "specversion": "1.0", + "operationId": "NodePoolRollingFailedEventName", + "title": "NodePoolRollingFailed" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/node_pool_rolling_started.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/node_pool_rolling_started.json new file mode 100644 index 0000000000000..d431d547baf0c --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/node_pool_rolling_started.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.ContainerService/managedClusters/{cluster}", + "subject": "{cluster}", + "type": "Microsoft.ContainerService.NodePoolRollingStarted", + "time": "2023-03-29T18:00:00.0000000Z", + "id": "1234567890abcdef1234567890abcdef12345678", + "data": { + "nodePoolName": "nodepool1" + }, + "specversion": "1.0", + "operationId": "NodePoolRollingStartedEventName", + "title": "NodePoolRollingStarted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/node_pool_rolling_succeeded.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/node_pool_rolling_succeeded.json new file mode 100644 index 0000000000000..c996b132e7f73 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/node_pool_rolling_succeeded.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.ContainerService/managedClusters/{cluster}", + "subject": "{cluster}", + "type": "Microsoft.ContainerService.NodePoolRollingSucceeded", + "time": "2023-03-29T18:00:00.0000000Z", + "id": "1234567890abcdef1234567890abcdef12345678", + "data": { + "nodePoolName": "nodepool1" + }, + "specversion": "1.0", + "operationId": "NodePoolRollingSucceededEventName", + "title": "NodePoolRollingSucceeded" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/order_completed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/order_completed.json new file mode 100644 index 0000000000000..1d1ae403a15ca --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/order_completed.json @@ -0,0 +1,15 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.DataBox/jobs/{your-resource}", + "subject": "/jobs/{your-resource}", + "type": "Microsoft.DataBox.OrderCompleted", + "time": "2022-10-16T02:51:26.4248221Z", + "id": "5eb07c79-39a8-439c-bb4b-bde1f6267c37", + "data": { + "serialNumber": "SampleSerialNumber", + "stageName": "OrderCompleted", + "stageTime": "2022-10-12T19:38:08.0218897Z" + }, + "specVersion": "1.0", + "operationId": "OrderCompletedEventName", + "title": "OrderCompleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/patching_completed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/patching_completed.json new file mode 100644 index 0000000000000..1c5adbcd4023f --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/patching_completed.json @@ -0,0 +1,15 @@ +{ + "source": "/subscriptions/{subscription_id}/resourceGroups/{resource_group_name}/providers/Microsoft.Cache/Redis/{cache_name}", + "subject": "PatchingCompleted", + "type": "Microsoft.Cache.PatchingCompleted", + "time": "2020-12-09T13:50:19.9995668-08:00", + "id": "9b87886d-21a5-4af5-8e3e-10c4b8dac73b", + "data": { + "name": "PatchingCompleted", + "timestamp": "2020-12-09T13:50:19.9995668-08:00", + "status": "Succeeded" + }, + "specversion": "1.0", + "operationId": "PatchingCompletedEventName", + "title": "PatchingCompleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/policy_state_changed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/policy_state_changed.json new file mode 100644 index 0000000000000..2a0d19b5c64e3 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/policy_state_changed.json @@ -0,0 +1,19 @@ +{ + "source": "/subscriptions/{subscription-id}", + "subject": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/{provider-namespace}/{resource-type}/{resource-name}", + "type": "Microsoft.PolicyInsights.PolicyStateChanged", + "time": "2021-03-27T18:37:42.5241536Z", + "id": "5829794FCB5075FCF585476619577B5A5A30E52C84842CBD4E2AD73996714C4C", + "data": { + "timestamp": "2021-03-27T18:37:42.4496956Z", + "policyAssignmentId": "{policy-assignment-scope}/providers/microsoft.authorization/policyassignments/{policy-assignment-name}", + "policyDefinitionId": "{policy-definition-scope}/providers/microsoft.authorization/policydefinitions/{policy-definition-name}", + "policyDefinitionReferenceId": "", + "complianceState": "NonCompliant", + "subscriptionId": "{subscription-id}", + "complianceReasonCode": "" + }, + "specversion": "1.0", + "operationId": "PolicyStateChangedEventName", + "title": "PolicyStateChanged" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/policy_state_created.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/policy_state_created.json new file mode 100644 index 0000000000000..eb01cd2e5e9a7 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/policy_state_created.json @@ -0,0 +1,19 @@ +{ + "source": "/subscriptions/{subscription-id}", + "subject": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/{provider-namespace}/{resource-type}/{resource-name}", + "type": "Microsoft.PolicyInsights.PolicyStateCreated", + "time": "2021-03-27T18:37:42.5241536Z", + "id": "5829794FCB5075FCF585476619577B5A5A30E52C84842CBD4E2AD73996714C4C", + "data": { + "timestamp": "2021-03-27T18:37:42.4496956Z", + "policyAssignmentId": "{policy-assignment-scope}/providers/microsoft.authorization/policyassignments/{policy-assignment-name}", + "policyDefinitionId": "{policy-definition-scope}/providers/microsoft.authorization/policydefinitions/{policy-definition-name}", + "policyDefinitionReferenceId": "", + "complianceState": "NonCompliant", + "subscriptionId": "{subscription-id}", + "complianceReasonCode": "" + }, + "specversion": "1.0", + "operationId": "PolicyStateCreatedEventName", + "title": "PolicyStateCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/privatecloud_updating.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/privatecloud_updating.json new file mode 100644 index 0000000000000..3ce4d1955d735 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/privatecloud_updating.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription_id}/resourceGroups/{resource_group_name}/providers/Microsoft.AVS/privateClouds/{sddc_name}", + "subject": "", + "type": "Microsoft.AVS.PrivateCloudUpdating", + "time": "2023-12-09T16:50:19.9995668-05:00", + "id": "9b87886d-21a5-4af5-8e3e-10c4b8dac73b", + "data": { + "operationId": "6dcd7db8-0679-40d9-bb8a-6f2a684395e2" + }, + "specVersion": "1.0", + "operationId": "PrivateCloudUpdatingEventName", + "title": "PrivateCloudUpdating" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/productCreated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/productCreated.json new file mode 100644 index 0000000000000..661741d0f8d71 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/productCreated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/products/myproduct", + "type": "Microsoft.ApiManagement.ProductCreated", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/products/myproduct" + }, + "specversion": "1.0", + "operationId": "ProductCreatedEventName", + "title": "ProductCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/productDeleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/productDeleted.json new file mode 100644 index 0000000000000..b7effe511a06b --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/productDeleted.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/products/myproduct", + "type": "Microsoft.ApiManagement.ProductDeleted", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/products/myproduct" + }, + "specversion": "1.0", + "operationId": "ProductDeletedEventName", + "title": "ProductDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/productUpdated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/productUpdated.json new file mode 100644 index 0000000000000..fc2e409923fa6 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/productUpdated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/products/myproduct", + "type": "Microsoft.ApiManagement.ProductUpdated", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/products/myproduct" + }, + "specversion": "1.0", + "operationId": "ProductUpdatedEventName", + "title": "ProductUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/recording_file_status_updated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/recording_file_status_updated.json new file mode 100644 index 0000000000000..a37721664ed03 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/recording_file_status_updated.json @@ -0,0 +1,30 @@ +{ + "source": "/subscriptions/{subscription-id}/resourcegroups/}{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}", + "subject": "/recording/call/{call-id}/recordingId/{recording-id}", + "type": "Microsoft.Communication.RecordingFileStatusUpdated", + "time": "2021-07-27T15:20:34.2199328Z", + "id": "7283825e-f8f1-4c61-a9ea-752c56890500", + "data": { + "recordingStorageInfo": { + "recordingChunks": [ + { + "documentId": "0-eus-d12-801b3f3fc462fe8a01e6810cbff729b8", + "index": 0, + "endReason": "SessionEnded", + "contentLocation": "https://storage.asm.skype.com/v1/objects/0-eus-d12-801b3f3fc462fe8a01e6810cbff729b8/content/video", + "metadataLocation": "https://storage.asm.skype.com/v1/objects/0-eus-d12-801b3f3fc462fe8a01e6810cbff729b8/content/acsmetadata", + "deleteLocation": "https://storage.asm.skype.com/v1/objects/0-eus-d12-801b3f3fc462fe8a01e6810cbff729b8/content/deletedata" + } + ] + }, + "recordingStartTime": "2021-07-27T15:20:23.6089755Z", + "recordingDurationMs": 6620, + "sessionEndReason": "CallEnded", + "recordingContentType": "Audio", + "recordingChannelType": "Mixed", + "recordingFormatType": "Mp3" + }, + "specversion": "1.0", + "operationId": "RecordingFileStatusUpdatedEventName", + "title": "RecordingFileStatusUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_action_cancel.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_action_cancel.json new file mode 100644 index 0000000000000..b5d7471041c2d --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_action_cancel.json @@ -0,0 +1,53 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}", + "subject": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey", + "type": "Microsoft.Resources.ResourceActionCancel", + "time": "2018-10-08T22:46:22.6022559Z", + "id": "{ID}", + "data": { + "authorization": { + "scope": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey", + "action": "Microsoft.EventHub/namespaces/AuthorizationRules/listKeys/action", + "evidence": { + "role": "Contributor", + "roleAssignmentScope": "/subscriptions/{subscription-id}", + "roleAssignmentId": "{ID}", + "roleDefinitionId": "{ID}", + "principalId": "{ID}", + "principalType": "ServicePrincipal" + } + }, + "claims": { + "aud": "{audience-claim}", + "iss": "{issuer-claim}", + "iat": "{issued-at-claim}", + "nbf": "{not-before-claim}", + "exp": "{expiration-claim}", + "aio": "{token}", + "appid": "{ID}", + "appidacr": "2", + "http://schemas.microsoft.com/identity/claims/identityprovider": "{URL}", + "http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}", + "http://schemas.microsoft.com/identity/claims/tenantid": "{ID}", + "uti": "{ID}", + "ver": "1.0" + }, + "correlationId": "{ID}", + "httpRequest": { + "clientRequestId": "{ID}", + "clientIpAddress": "{IP-address}", + "method": "POST", + "url": "https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey/listKeys?api-version=2017-04-01" + }, + "resourceProvider": "Microsoft.EventHub", + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey", + "operationName": "Microsoft.EventHub/namespaces/AuthorizationRules/listKeys/action", + "status": "Succeeded", + "subscriptionId": "{subscription-id}", + "tenantId": "{tenant-id}" + }, + "specversion": "1.0", + "operationId": "ResourceActionCancelEventName", + "title": "ResourceActionCancel" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_action_failure.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_action_failure.json new file mode 100644 index 0000000000000..b95a170941f2c --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_action_failure.json @@ -0,0 +1,53 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}", + "subject": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey", + "type": "Microsoft.Resources.ResourceActionFailure", + "time": "2018-10-08T22:46:22.6022559Z", + "id": "{ID}", + "data": { + "authorization": { + "scope": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey", + "action": "Microsoft.EventHub/namespaces/AuthorizationRules/listKeys/action", + "evidence": { + "role": "Contributor", + "roleAssignmentScope": "/subscriptions/{subscription-id}", + "roleAssignmentId": "{ID}", + "roleDefinitionId": "{ID}", + "principalId": "{ID}", + "principalType": "ServicePrincipal" + } + }, + "claims": { + "aud": "{audience-claim}", + "iss": "{issuer-claim}", + "iat": "{issued-at-claim}", + "nbf": "{not-before-claim}", + "exp": "{expiration-claim}", + "aio": "{token}", + "appid": "{ID}", + "appidacr": "2", + "http://schemas.microsoft.com/identity/claims/identityprovider": "{URL}", + "http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}", + "http://schemas.microsoft.com/identity/claims/tenantid": "{ID}", + "uti": "{ID}", + "ver": "1.0" + }, + "correlationId": "{ID}", + "httpRequest": { + "clientRequestId": "{ID}", + "clientIpAddress": "{IP-address}", + "method": "POST", + "url": "https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey/listKeys?api-version=2017-04-01" + }, + "resourceProvider": "Microsoft.EventHub", + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey", + "operationName": "Microsoft.EventHub/namespaces/AuthorizationRules/listKeys/action", + "status": "Succeeded", + "subscriptionId": "{subscription-id}", + "tenantId": "{tenant-id}" + }, + "specversion": "1.0", + "operationId": "ResourceActionFailureEventName", + "title": "ResourceActionFailure" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_action_success.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_action_success.json new file mode 100644 index 0000000000000..ac29d4e24eccc --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_action_success.json @@ -0,0 +1,53 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}", + "subject": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey", + "type": "Microsoft.Resources.ResourceActionSuccess", + "time": "2018-10-08T22:46:22.6022559Z", + "id": "{ID}", + "data": { + "authorization": { + "scope": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey", + "action": "Microsoft.EventHub/namespaces/AuthorizationRules/listKeys/action", + "evidence": { + "role": "Contributor", + "roleAssignmentScope": "/subscriptions/{subscription-id}", + "roleAssignmentId": "{ID}", + "roleDefinitionId": "{ID}", + "principalId": "{ID}", + "principalType": "ServicePrincipal" + } + }, + "claims": { + "aud": "{audience-claim}", + "iss": "{issuer-claim}", + "iat": "{issued-at-claim}", + "nbf": "{not-before-claim}", + "exp": "{expiration-claim}", + "aio": "{token}", + "appid": "{ID}", + "appidacr": "2", + "http://schemas.microsoft.com/identity/claims/identityprovider": "{URL}", + "http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}", + "http://schemas.microsoft.com/identity/claims/tenantid": "{ID}", + "uti": "{ID}", + "ver": "1.0" + }, + "correlationId": "{ID}", + "httpRequest": { + "clientRequestId": "{ID}", + "clientIpAddress": "{IP-address}", + "method": "POST", + "url": "https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey/listKeys?api-version=2017-04-01" + }, + "resourceProvider": "Microsoft.EventHub", + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey", + "operationName": "Microsoft.EventHub/namespaces/AuthorizationRules/listKeys/action", + "status": "Succeeded", + "subscriptionId": "{subscription-id}", + "tenantId": "{tenant-id}" + }, + "specversion": "1.0", + "operationId": "ResourceActionSuccessEventName", + "title": "ResourceActionSuccess" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_delete_cancel.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_delete_cancel.json new file mode 100644 index 0000000000000..beddce02b92ad --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_delete_cancel.json @@ -0,0 +1,62 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}", + "subject": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "type": "Microsoft.Resources.ResourceDeleteCancel", + "time": "2018-07-19T19:24:12.7638810Z", + "id": "19a69642-1aad-4a96-a5ab-8d05494513ce", + "data": { + "authorization": { + "scope": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "action": "Microsoft.Storage/storageAccounts/delete", + "evidence": { + "role": "Subscription Admin" + } + }, + "claims": { + "aud": "{audience-claim}", + "iss": "{issuer-claim}", + "iat": "{issued-at-claim}", + "nbf": "{not-before-claim}", + "exp": "{expiration-claim}", + "_claim_names": "{\"groups\":\"src1\"}", + "_claim_sources": "{\"src1\":{\"endpoint\":\"{URI}\"}}", + "http://schemas.microsoft.com/claims/authnclassreference": "1", + "aio": "{token}", + "http://schemas.microsoft.com/claims/authnmethodsreferences": "rsa,mfa", + "appid": "{ID}", + "appidacr": "2", + "http://schemas.microsoft.com/2012/01/devicecontext/claims/identifier": "{ID}", + "e_exp": "262800", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname": "{last-name}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname": "{first-name}", + "ipaddr": "{IP-address}", + "name": "{full-name}", + "http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}", + "onprem_sid": "{ID}", + "puid": "{ID}", + "http://schemas.microsoft.com/identity/claims/scope": "user_impersonation", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}", + "http://schemas.microsoft.com/identity/claims/tenantid": "{ID}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": "{user-name}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn": "{user-name}", + "uti": "{ID}", + "ver": "1.0" + }, + "correlationId": "{ID}", + "httpRequest": { + "clientRequestId": "{ID}", + "clientIpAddress": "{IP-address}", + "method": "DELETE", + "url": "https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}?api-version=2018-02-01" + }, + "resourceProvider": "Microsoft.Storage", + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "operationName": "Microsoft.Storage/storageAccounts/delete", + "status": "Succeeded", + "subscriptionId": "{subscription-id}", + "tenantId": "{tenant-id}" + }, + "specversion": "1.0", + "operationId": "ResourceDeleteCancelEventName", + "title": "ResourceDeleteCancel" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_delete_failure.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_delete_failure.json new file mode 100644 index 0000000000000..c5aeb788f2ef9 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_delete_failure.json @@ -0,0 +1,62 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}", + "subject": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "type": "Microsoft.Resources.ResourceDeleteFailure", + "time": "2018-07-19T19:24:12.7638810Z", + "id": "19a69642-1aad-4a96-a5ab-8d05494513ce", + "data": { + "authorization": { + "scope": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "action": "Microsoft.Storage/storageAccounts/delete", + "evidence": { + "role": "Subscription Admin" + } + }, + "claims": { + "aud": "{audience-claim}", + "iss": "{issuer-claim}", + "iat": "{issued-at-claim}", + "nbf": "{not-before-claim}", + "exp": "{expiration-claim}", + "_claim_names": "{\"groups\":\"src1\"}", + "_claim_sources": "{\"src1\":{\"endpoint\":\"{URI}\"}}", + "http://schemas.microsoft.com/claims/authnclassreference": "1", + "aio": "{token}", + "http://schemas.microsoft.com/claims/authnmethodsreferences": "rsa,mfa", + "appid": "{ID}", + "appidacr": "2", + "http://schemas.microsoft.com/2012/01/devicecontext/claims/identifier": "{ID}", + "e_exp": "262800", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname": "{last-name}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname": "{first-name}", + "ipaddr": "{IP-address}", + "name": "{full-name}", + "http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}", + "onprem_sid": "{ID}", + "puid": "{ID}", + "http://schemas.microsoft.com/identity/claims/scope": "user_impersonation", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}", + "http://schemas.microsoft.com/identity/claims/tenantid": "{ID}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": "{user-name}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn": "{user-name}", + "uti": "{ID}", + "ver": "1.0" + }, + "correlationId": "{ID}", + "httpRequest": { + "clientRequestId": "{ID}", + "clientIpAddress": "{IP-address}", + "method": "DELETE", + "url": "https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}?api-version=2018-02-01" + }, + "resourceProvider": "Microsoft.Storage", + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "operationName": "Microsoft.Storage/storageAccounts/delete", + "status": "Succeeded", + "subscriptionId": "{subscription-id}", + "tenantId": "{tenant-id}" + }, + "specversion": "1.0", + "operationId": "ResourceDeleteFailureEventName", + "title": "ResourceDeleteFailure" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_delete_success.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_delete_success.json new file mode 100644 index 0000000000000..8c04aaee1f61a --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_delete_success.json @@ -0,0 +1,62 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}", + "subject": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "type": "Microsoft.Resources.ResourceDeleteSuccess", + "time": "2018-07-19T19:24:12.7638810Z", + "id": "19a69642-1aad-4a96-a5ab-8d05494513ce", + "data": { + "authorization": { + "scope": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "action": "Microsoft.Storage/storageAccounts/delete", + "evidence": { + "role": "Subscription Admin" + } + }, + "claims": { + "aud": "{audience-claim}", + "iss": "{issuer-claim}", + "iat": "{issued-at-claim}", + "nbf": "{not-before-claim}", + "exp": "{expiration-claim}", + "_claim_names": "{\"groups\":\"src1\"}", + "_claim_sources": "{\"src1\":{\"endpoint\":\"{URI}\"}}", + "http://schemas.microsoft.com/claims/authnclassreference": "1", + "aio": "{token}", + "http://schemas.microsoft.com/claims/authnmethodsreferences": "rsa,mfa", + "appid": "{ID}", + "appidacr": "2", + "http://schemas.microsoft.com/2012/01/devicecontext/claims/identifier": "{ID}", + "e_exp": "262800", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname": "{last-name}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname": "{first-name}", + "ipaddr": "{IP-address}", + "name": "{full-name}", + "http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}", + "onprem_sid": "{ID}", + "puid": "{ID}", + "http://schemas.microsoft.com/identity/claims/scope": "user_impersonation", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}", + "http://schemas.microsoft.com/identity/claims/tenantid": "{ID}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": "{user-name}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn": "{user-name}", + "uti": "{ID}", + "ver": "1.0" + }, + "correlationId": "{ID}", + "httpRequest": { + "clientRequestId": "{ID}", + "clientIpAddress": "{IP-address}", + "method": "DELETE", + "url": "https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}?api-version=2018-02-01" + }, + "resourceProvider": "Microsoft.Storage", + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "operationName": "Microsoft.Storage/storageAccounts/delete", + "status": "Succeeded", + "subscriptionId": "{subscription-id}", + "tenantId": "{tenant-id}" + }, + "specversion": "1.0", + "operationId": "ResourceDeleteSuccessEventName", + "title": "ResourceDeleteSuccess" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_write_cancel.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_write_cancel.json new file mode 100644 index 0000000000000..c12b1f3a7d988 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_write_cancel.json @@ -0,0 +1,56 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}", + "subject": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "type": "Microsoft.Resources.ResourceWriteCancel", + "time": "2018-07-19T18:38:04.6117357Z", + "id": "4db48cba-50a2-455a-93b4-de41a3b5b7f6", + "data": { + "authorization": { + "scope": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "action": "Microsoft.Storage/storageAccounts/write", + "evidence": { + "role": "Subscription Admin" + } + }, + "claims": { + "aud": "{audience-claim}", + "iss": "{issuer-claim}", + "iat": "{issued-at-claim}", + "nbf": "{not-before-claim}", + "exp": "{expiration-claim}", + "_claim_names": "{\"groups\":\"src1\"}", + "_claim_sources": "{\"src1\":{\"endpoint\":\"{URI}\"}}", + "http://schemas.microsoft.com/claims/authnclassreference": "1", + "aio": "{token}", + "http://schemas.microsoft.com/claims/authnmethodsreferences": "rsa,mfa", + "appid": "{ID}", + "appidacr": "2", + "http://schemas.microsoft.com/2012/01/devicecontext/claims/identifier": "{ID}", + "e_exp": "{expiration}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname": "{last-name}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname": "{first-name}", + "ipaddr": "{IP-address}", + "name": "{full-name}", + "http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}", + "onprem_sid": "{ID}", + "puid": "{ID}", + "http://schemas.microsoft.com/identity/claims/scope": "user_impersonation", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}", + "http://schemas.microsoft.com/identity/claims/tenantid": "{ID}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": "{user-name}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn": "{user-name}", + "uti": "{ID}", + "ver": "1.0" + }, + "correlationId": "{ID}", + "resourceProvider": "Microsoft.Storage", + "resourceUri": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "operationName": "Microsoft.Storage/storageAccounts/write", + "status": "Succeeded", + "subscriptionId": "{subscription-id}", + "tenantId": "{tenant-id}" + }, + "specversion": "1.0", + "operationId": "ResourceWriteCancelEventName", + "title": "ResourceWriteCancel" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_write_failure.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_write_failure.json new file mode 100644 index 0000000000000..66b05899e504f --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_write_failure.json @@ -0,0 +1,56 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}", + "subject": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "type": "Microsoft.Resources.ResourceWriteFailure", + "time": "2018-07-19T18:38:04.6117357Z", + "id": "4db48cba-50a2-455a-93b4-de41a3b5b7f6", + "data": { + "authorization": { + "scope": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "action": "Microsoft.Storage/storageAccounts/write", + "evidence": { + "role": "Subscription Admin" + } + }, + "claims": { + "aud": "{audience-claim}", + "iss": "{issuer-claim}", + "iat": "{issued-at-claim}", + "nbf": "{not-before-claim}", + "exp": "{expiration-claim}", + "_claim_names": "{\"groups\":\"src1\"}", + "_claim_sources": "{\"src1\":{\"endpoint\":\"{URI}\"}}", + "http://schemas.microsoft.com/claims/authnclassreference": "1", + "aio": "{token}", + "http://schemas.microsoft.com/claims/authnmethodsreferences": "rsa,mfa", + "appid": "{ID}", + "appidacr": "2", + "http://schemas.microsoft.com/2012/01/devicecontext/claims/identifier": "{ID}", + "e_exp": "{expiration}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname": "{last-name}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname": "{first-name}", + "ipaddr": "{IP-address}", + "name": "{full-name}", + "http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}", + "onprem_sid": "{ID}", + "puid": "{ID}", + "http://schemas.microsoft.com/identity/claims/scope": "user_impersonation", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}", + "http://schemas.microsoft.com/identity/claims/tenantid": "{ID}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": "{user-name}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn": "{user-name}", + "uti": "{ID}", + "ver": "1.0" + }, + "correlationId": "{ID}", + "resourceProvider": "Microsoft.Storage", + "resourceUri": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "operationName": "Microsoft.Storage/storageAccounts/write", + "status": "Succeeded", + "subscriptionId": "{subscription-id}", + "tenantId": "{tenant-id}" + }, + "specversion": "1.0", + "operationId": "ResourceWriteFailureEventName", + "title": "ResourceWriteFailure" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_write_success.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_write_success.json new file mode 100644 index 0000000000000..5ecbe61f96b92 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/resource_write_success.json @@ -0,0 +1,56 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}", + "subject": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "type": "Microsoft.Resources.ResourceWriteSuccess", + "time": "2018-07-19T18:38:04.6117357Z", + "id": "4db48cba-50a2-455a-93b4-de41a3b5b7f6", + "data": { + "authorization": { + "scope": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "action": "Microsoft.Storage/storageAccounts/write", + "evidence": { + "role": "Subscription Admin" + } + }, + "claims": { + "aud": "{audience-claim}", + "iss": "{issuer-claim}", + "iat": "{issued-at-claim}", + "nbf": "{not-before-claim}", + "exp": "{expiration-claim}", + "_claim_names": "{\"groups\":\"src1\"}", + "_claim_sources": "{\"src1\":{\"endpoint\":\"{URI}\"}}", + "http://schemas.microsoft.com/claims/authnclassreference": "1", + "aio": "{token}", + "http://schemas.microsoft.com/claims/authnmethodsreferences": "rsa,mfa", + "appid": "{ID}", + "appidacr": "2", + "http://schemas.microsoft.com/2012/01/devicecontext/claims/identifier": "{ID}", + "e_exp": "{expiration}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname": "{last-name}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname": "{first-name}", + "ipaddr": "{IP-address}", + "name": "{full-name}", + "http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}", + "onprem_sid": "{ID}", + "puid": "{ID}", + "http://schemas.microsoft.com/identity/claims/scope": "user_impersonation", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}", + "http://schemas.microsoft.com/identity/claims/tenantid": "{ID}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": "{user-name}", + "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn": "{user-name}", + "uti": "{ID}", + "ver": "1.0" + }, + "correlationId": "{ID}", + "resourceProvider": "Microsoft.Storage", + "resourceUri": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}", + "operationName": "Microsoft.Storage/storageAccounts/write", + "status": "Succeeded", + "subscriptionId": "{subscription-id}", + "tenantId": "{tenant-id}" + }, + "specversion": "1.0", + "operationId": "ResourceWriteSuccessEventName", + "title": "ResourceWriteSuccess" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/restore_operation_completed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/restore_operation_completed.json new file mode 100644 index 0000000000000..980acdf79875b --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/restore_operation_completed.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{site-name}", + "subject": "/Microsoft.Web/sites/{site-name}", + "type": "Microsoft.Web.RestoreOperationCompleted", + "time": "2020-01-28T18:26:51.7194887Z", + "id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8", + "data": { + "appEventTypeDetail": { + "action": "Started" + }, + "name": "{site-name}", + "clientRequestId": "None", + "correlationRequestId": "None", + "requestId": "292f499d-04ee-4066-994d-c2df57b99198", + "address": "None", + "verb": "POST" + }, + "specversion": "1.0", + "operationId": "RestoreOperationCompletedEventName", + "title": "RestoreOperationCompleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/restore_operation_failed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/restore_operation_failed.json new file mode 100644 index 0000000000000..e01074905f503 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/restore_operation_failed.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{site-name}", + "subject": "/Microsoft.Web/sites/{site-name}", + "type": "Microsoft.Web.RestoreOperationFailed", + "time": "2020-01-28T18:26:51.7194887Z", + "id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8", + "data": { + "appEventTypeDetail": { + "action": "Started" + }, + "name": "{site-name}", + "clientRequestId": "None", + "correlationRequestId": "None", + "requestId": "292f499d-04ee-4066-994d-c2df57b99198", + "address": "None", + "verb": "POST" + }, + "specversion": "1.0", + "operationId": "RestoreOperationFailedEventName", + "title": "RestoreOperationFailed" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/restore_operation_started.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/restore_operation_started.json new file mode 100644 index 0000000000000..429ad94c741b1 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/restore_operation_started.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{site-name}", + "subject": "/Microsoft.Web/sites/{site-name}", + "type": "Microsoft.Web.RestoreOperationStarted", + "time": "2020-01-28T18:26:51.7194887Z", + "id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8", + "data": { + "appEventTypeDetail": { + "action": "Started" + }, + "name": "{site-name}", + "clientRequestId": "None", + "correlationRequestId": "None", + "requestId": "292f499d-04ee-4066-994d-c2df57b99198", + "address": "None", + "verb": "POST" + }, + "specversion": "1.0", + "operationId": "RestoreOperationStartedEventName", + "title": "RestoreOperationStarted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_cancelled.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_cancelled.json new file mode 100644 index 0000000000000..93b14c8b32071 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_cancelled.json @@ -0,0 +1,28 @@ +{ + "id": "b6d8687a-5a1a-42ae-b8b5-ff7ec338c872", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "job/{job-id}/channel/{channel-id}/disposition/{disposition-code}", + "data": { + "note": "Cancelled due to ", + "dispositionCode": "100", + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelReference": "test-abc", + "channelId": "FooVoiceChannelId", + "labels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "tags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "queueId": "" + }, + "type": "Microsoft.Communication.RouterJobCancelled", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterJobCancelledEventName", + "title": "RouterJobCancelled" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_classification_failed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_classification_failed.json new file mode 100644 index 0000000000000..86ad7627c4cfd --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_classification_failed.json @@ -0,0 +1,35 @@ +{ + "id": "b6d8687a-5a1a-42ae-b8b5-ff7ec338c872", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "job/{job-id}/channel/{channel-id}/classificationpolicy/{classificationpolicy-id}", + "data": { + "errors": [ + { + "code": null, + "message": "Classification failed due to ", + "target": null, + "innererror": null, + "details": null + } + ], + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelReference": "test-abc", + "channelId": "FooVoiceChannelId", + "classificationPolicyId": "test-policy", + "labels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "tags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + } + }, + "type": "Microsoft.Communication.RouterJobClassificationFailed", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterJobClassificationFailedEventName", + "title": "RouterJobClassificationFailed" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_classified.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_classified.json new file mode 100644 index 0000000000000..d4cb0076a8ead --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_classified.json @@ -0,0 +1,45 @@ +{ + "id": "b6d8687a-5a1a-42ae-b8b5-ff7ec338c872", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "job/{job-id}/channel/{channel-id}/queue/{queue-id}", + "data": { + "queueDetails": { + "id": "625fec06-ab81-4e60-b780-f364ed96ade1", + "name": "Queue 1", + "labels": { + "Language": "en", + "Product": "Office", + "Geo": "NA" + } + }, + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelReference": "test-abc", + "channelId": "FooVoiceChannelId", + "classificationPolicyId": "test-policy", + "queueId": "625fec06-ab81-4e60-b780-f364ed96ade1", + "priority": 5, + "labels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "tags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "attachedWorkerSelectors": [ + { + "key": "string", + "labelOperator": "equal", + "value": 5, + "ttlSeconds": "36" + } + ] + }, + "type": "Microsoft.Communication.RouterJobClassified", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterJobClassifiedEventName", + "title": "RouterJobClassified" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_closed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_closed.json new file mode 100644 index 0000000000000..13d2847c84203 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_closed.json @@ -0,0 +1,29 @@ +{ + "id": "b6d8687a-5a1a-42ae-b8b5-ff7ec338c872", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "job/{job-id}/channel/{channel-id}/assignment/{assignment-id}", + "data": { + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelReference": "test-abc", + "channelId": "FooVoiceChannelId", + "queueId": "", + "dispositionCode": "", + "workerId": "", + "assignmentId": "", + "labels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "tags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + } + }, + "type": "Microsoft.Communication.RouterJobClosed", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterJobClosedEventName", + "title": "RouterJobClosed" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_completed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_completed.json new file mode 100644 index 0000000000000..486dfcd80ab81 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_completed.json @@ -0,0 +1,28 @@ +{ + "id": "b6d8687a-5a1a-42ae-b8b5-ff7ec338c872", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "job/{job-id}/channel/{channel-id}/assignment/{assignment-id}", + "data": { + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelReference": "test-abc", + "channelId": "FooVoiceChannelId", + "queueId": "queue-id", + "assignmentId": "6f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "labels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "tags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "workerId": "" + }, + "type": "Microsoft.Communication.RouterJobCompleted", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterJobCompletedEventName", + "title": "RouterJobCompleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_deleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_deleted.json new file mode 100644 index 0000000000000..ac06929c5d2c5 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_deleted.json @@ -0,0 +1,26 @@ +{ + "id": "acdf8fa5-8ab4-4a65-874a-c1d2a4a97f2e", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "job/{job-id}/channel/{channel-id}", + "data": { + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelReference": "test-abc", + "channelId": "FooVoiceChannelId", + "labels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "tags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "queueId": "" + }, + "type": "Microsoft.Communication.RouterJobDeleted", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterJobDeletedEventName", + "title": "RouterJobDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_exception_triggered.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_exception_triggered.json new file mode 100644 index 0000000000000..01ae25094c59f --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_exception_triggered.json @@ -0,0 +1,27 @@ +{ + "id": "1027db4a-17fe-4a7f-ae67-276c3120a29f", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "job/{job-id}/channel/{channel-id}/exceptionrule/{rulekey}", + "data": { + "ruleKey": "r100", + "exceptionRuleId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelReference": "test-abc", + "channelId": "FooVoiceChannelId", + "labels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "tags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + } + }, + "type": "Microsoft.Communication.RouterJobExceptionTriggered", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterJobExceptionTriggeredEventName", + "title": "RouterJobExceptionTriggered" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_queued.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_queued.json new file mode 100644 index 0000000000000..80737e723e135 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_queued.json @@ -0,0 +1,43 @@ +{ + "id": "b6d8687a-5a1a-42ae-b8b5-ff7ec338c872", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "job/{job-id}/channel/{channel-id}/queue/{queue-id}", + "data": { + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelReference": "test-abc", + "channelId": "FooVoiceChannelId", + "queueId": "625fec06-ab81-4e60-b780-f364ed96ade1", + "priority": 1, + "labels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "tags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "requestedWorkerSelectors": [ + { + "key": "string", + "labelOperator": "equal", + "value": 5, + "ttl": "40" + } + ], + "attachedWorkerSelectors": [ + { + "key": "string", + "labelOperator": "equal", + "value": 5, + "ttlSeconds": "39" + } + ] + }, + "type": "Microsoft.Communication.RouterJobQueued", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterJobQueuedEventName", + "title": "RouterJobQueued" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_received.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_received.json new file mode 100644 index 0000000000000..08f10751508fa --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_received.json @@ -0,0 +1,39 @@ +{ + "id": "acdf8fa5-8ab4-4a65-874a-c1d2a4a97f2e", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "job/{job-id}/channel/{channel-id}", + "data": { + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelReference": "test-abc", + "jobStatus": "PendingClassification", + "channelId": "FooVoiceChannelId", + "classificationPolicyId": "test-policy", + "queueId": "queue-id", + "priority": 0, + "labels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "tags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "requestedWorkerSelectors": [ + { + "key": "string", + "labelOperator": "equal", + "value": 5, + "ttlSeconds": "36" + } + ], + "scheduledOn": "3/28/2007 7:13:50 PM +00:00", + "unavailableForMatching": false + }, + "type": "Microsoft.Communication.RouterJobReceived", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterJobReceivedEventName", + "title": "RouterJobReceived" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_scheduling_failed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_scheduling_failed.json new file mode 100644 index 0000000000000..c44c5b5560531 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_scheduling_failed.json @@ -0,0 +1,45 @@ +{ + "id": "acdf8fa5-8ab4-4a65-874a-c1d2a4a97f2e", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "job/{job-id}/channel/{channel-id}", + "data": { + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelId": "FooVoiceChannelId", + "channelReference": "test-abc", + "queueId": "queue-id", + "priority": 1, + "labels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "tags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "requestedWorkerSelectors": [ + { + "key": "string", + "labelOperator": "equal", + "value": 5, + "ttlSeconds": "36" + } + ], + "attachedWorkerSelectors": [ + { + "key": "string", + "labelOperator": "equal", + "value": 5, + "ttlSeconds": "30" + } + ], + "scheduledOn": "2022-02-17T00:55:25.1736293Z", + "failureReason": "Expired Job" + }, + "type": "Microsoft.Communication.RouterJobSchedulingFailed", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterJobSchedulingFailedEventName", + "title": "RouterJobSchedulingFailed" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_unassigned.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_unassigned.json new file mode 100644 index 0000000000000..4b383aed40fb1 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_unassigned.json @@ -0,0 +1,28 @@ +{ + "id": "acdf8fa5-8ab4-4a65-874a-c1d2a4a97f2e", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "job/{job-id}/channel/{channel-id}/assignment/{assignment-id}", + "data": { + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "assignmentId": "", + "workerId": "", + "channelId": "FooVoiceChannelId", + "channelReference": "test-abc", + "queueId": "queue-id", + "labels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "tags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + } + }, + "type": "Microsoft.Communication.RouterJobUnassigned", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterJobUnassignedEventName", + "title": "RouterJobUnassigned" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_waiting_for_activation.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_waiting_for_activation.json new file mode 100644 index 0000000000000..f86ae7a78d935 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_waiting_for_activation.json @@ -0,0 +1,45 @@ +{ + "id": "acdf8fa5-8ab4-4a65-874a-c1d2a4a97f2e", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "job/{job-id}/channel/{channel-id}", + "data": { + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelId": "FooVoiceChannelId", + "channelReference": "test-abc", + "queueId": "queue-id", + "priority": 1, + "labels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "tags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "requestedWorkerSelectors": [ + { + "key": "string", + "labelOperator": "equal", + "value": 5, + "ttlSeconds": "45" + } + ], + "attachedWorkerSelectors": [ + { + "key": "string", + "labelOperator": "equal", + "value": 5, + "ttlSeconds": "32" + } + ], + "scheduledOn": "2022-02-17T00:55:25.1736293Z", + "unavailableForMatching": false + }, + "type": "Microsoft.Communication.RouterJobWaitingForActivation", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterJobWaitingForActivationEventName", + "title": "RouterJobWaitingForActivation" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_worker_selectors_expired.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_worker_selectors_expired.json new file mode 100644 index 0000000000000..fe032e4a9ffd9 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_job_worker_selectors_expired.json @@ -0,0 +1,42 @@ +{ + "id": "b6d8687a-5a1a-42ae-b8b5-ff7ec338c872", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "job/{job-id}/channel/{channel-id}/queue/{queue-id}", + "data": { + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelReference": "test-abc", + "channelId": "FooVoiceChannelId", + "queueId": "625fec06-ab81-4e60-b780-f364ed96ade1", + "labels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "tags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "expiredRequestedWorkerSelectors": [ + { + "key": "string", + "labelOperator": "equal", + "value": 5, + "ttlSeconds": "30" + } + ], + "attachedWorkerSelectorsExpired": [ + { + "key": "string", + "labelOperator": "equal", + "value": 5, + "ttlSeconds": "35" + } + ] + }, + "type": "Microsoft.Communication.RouterJobWorkerSelectorsExpired", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterJobWorkerSelectorsExpiredEventName", + "title": "RouterJobWorkerSelectorsExpired" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_deleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_deleted.json new file mode 100644 index 0000000000000..3f7dfce2c605b --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_deleted.json @@ -0,0 +1,13 @@ +{ + "id": "1027db4a-17fe-4a7f-ae67-276c3120a29f", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "worker/{worker-id}", + "data": { + "workerId": "worker3" + }, + "type": "Microsoft.Communication.RouterWorkerDeleted", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterWorkerDeletedEventName", + "title": "RouterWorkerDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_deregistered.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_deregistered.json new file mode 100644 index 0000000000000..44afa02c64c35 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_deregistered.json @@ -0,0 +1,13 @@ +{ + "id": "1027db4a-17fe-4a7f-ae67-276c3120a29f", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "worker/{worker-id}", + "data": { + "workerId": "worker3" + }, + "type": "Microsoft.Communication.RouterWorkerDeregistered", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterWorkerDeregisteredEventName", + "title": "RouterWorkerDeregistered" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_accepted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_accepted.json new file mode 100644 index 0000000000000..9cbb60effa64e --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_accepted.json @@ -0,0 +1,30 @@ +{ + "id": "1027db4a-17fe-4a7f-ae67-276c3120a29f", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "worker/{worker-id}/job/{job-id}", + "data": { + "workerId": "w100", + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "jobPriority": 5, + "jobLabels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "jobTags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "channelReference": "test-abc", + "channelId": "FooVoiceChannelId", + "queueId": "625fec06-ab81-4e60-b780-f364ed96ade1", + "offerId": "565fec06-ab81-4e60-b780-f364ed96ade1", + "assignmentId": "765fec06-ab81-4e60-b780-f364ed96ade1" + }, + "type": "Microsoft.Communication.RouterWorkerOfferAccepted", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterWorkerOfferAcceptedEventName", + "title": "RouterWorkerOfferAccepted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_declined.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_declined.json new file mode 100644 index 0000000000000..6a9d6b48c30f4 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_declined.json @@ -0,0 +1,18 @@ +{ + "id": "1027db4a-17fe-4a7f-ae67-276c3120a29f", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "worker/{worker-id}/job/{job-id}", + "data": { + "workerId": "w100", + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelReference": "test-abc", + "channelId": "FooVoiceChannelId", + "queueId": "625fec06-ab81-4e60-b780-f364ed96ade1", + "offerId": "565fec06-ab81-4e60-b780-f364ed96ade1" + }, + "type": "Microsoft.Communication.RouterWorkerOfferDeclined", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterWorkerOfferDeclinedEventName", + "title": "RouterWorkerOfferDeclined" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_expired.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_expired.json new file mode 100644 index 0000000000000..28cecc2790bb4 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_expired.json @@ -0,0 +1,18 @@ +{ + "id": "1027db4a-17fe-4a7f-ae67-276c3120a29f", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "worker/{worker-id}/job/{job-id}", + "data": { + "offerId": "565fec06-ab81-4e60-b780-f364ed96ade1", + "workerId": "w100", + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelReference": "test-abc", + "channelId": "FooVoiceChannelId", + "queueId": "625fec06-ab81-4e60-b780-f364ed96ade1" + }, + "type": "Microsoft.Communication.RouterWorkerOfferExpired", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterWorkerOfferExpiredEventName", + "title": "RouterWorkerOfferExpired" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_issued.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_issued.json new file mode 100644 index 0000000000000..3cbc680d408e8 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_issued.json @@ -0,0 +1,31 @@ +{ + "id": "1027db4a-17fe-4a7f-ae67-276c3120a29f", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "worker/{worker-id}/job/{job-id}", + "data": { + "workerId": "w100", + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelReference": "test-abc", + "channelId": "FooVoiceChannelId", + "queueId": "625fec06-ab81-4e60-b780-f364ed96ade1", + "offerId": "525fec06-ab81-4e60-b780-f364ed96ade1", + "offeredOn": "2021-06-23T02:43:30.3847144Z", + "expiresOn": "2021-06-23T02:44:30.3847674Z", + "jobPriority": 5, + "jobLabels": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "jobTags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + } + }, + "type": "Microsoft.Communication.RouterWorkerOfferIssued", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterWorkerOfferIssuedEventName", + "title": "RouterWorkerOfferIssued" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_revoked.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_revoked.json new file mode 100644 index 0000000000000..de165805c1038 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_offer_revoked.json @@ -0,0 +1,18 @@ +{ + "id": "1027db4a-17fe-4a7f-ae67-276c3120a29f", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "worker/{worker-id}/job/{job-id}", + "data": { + "offerId": "565fec06-ab81-4e60-b780-f364ed96ade1", + "workerId": "w100", + "jobId": "7f1df17b-570b-4ae5-9cf5-fe6ff64cc712", + "channelReference": "test-abc", + "channelId": "FooVoiceChannelId", + "queueId": "625fec06-ab81-4e60-b780-f364ed96ade1" + }, + "type": "Microsoft.Communication.RouterWorkerOfferRevoked", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterWorkerOfferRevokedEventName", + "title": "RouterWorkerOfferRevoked" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_registered.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_registered.json new file mode 100644 index 0000000000000..34dddf8c2d26e --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/router_worker_registered.json @@ -0,0 +1,41 @@ +{ + "id": "1027db4a-17fe-4a7f-ae67-276c3120a29f", + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/Microsoft.Communication/communicationServices/{communication-services-resource-name}", + "subject": "worker/{worker-id}", + "data": { + "workerId": "worker3", + "totalCapacity": 100, + "queueAssignments": [ + { + "id": "MyQueueId2", + "name": "Queue 3", + "labels": { + "Language": "en", + "Product": "Office", + "Geo": "NA" + } + } + ], + "labels": { + "x": "111", + "y": "111" + }, + "channelConfigurations": [ + { + "channelId": "FooVoiceChannelId", + "capacityCostPerJob": 10 + } + ], + "tags": { + "Locale": "en-us", + "Segment": "Enterprise", + "Token": "FooToken" + }, + "maxNumberOfJobs": 5 + }, + "type": "Microsoft.Communication.RouterWorkerRegistered", + "specVersion": "1.0", + "time": "2022-02-17T00:55:25.1736293Z", + "operationId": "RouterWorkerRegisteredEventName", + "title": "RouterWorkerRegistered" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/run_completed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/run_completed.json new file mode 100644 index 0000000000000..9afb74b2e8297 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/run_completed.json @@ -0,0 +1,32 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.MachineLearningServices/workspaces/{workspace-name}", + "subject": "experiments/0fa9dfaa-cba3-4fa7-b590-23e48548f5c1/runs/AutoML_ad912b2d-6467-4f32-a616-dbe4af6dd8fc_5", + "type": "Microsoft.MachineLearningServices.RunCompleted", + "time": "2017-06-26T18:41:00.9584103Z", + "id": "831e1650-001e-001b-66ab-eeb76e069631", + "data": { + "experimentId": "0fa9dfaa-cba3-4fa7-b590-23e48548f5c1", + "experimentName": "automl-local-regression", + "runId": "AutoML_ad912b2d-6467-4f32-a616-dbe4af6dd8fc_5", + "runType": null, + "runTags": {}, + "runProperties": { + "runTemplate": "automl_child", + "pipeline_id": "5adc0a4fe02504a586f09a4fcbb241f9a4012062", + "pipeline_spec": "{\"objects\": [{\"class_name\": \"StandardScaler\", \"module\": \"sklearn.preprocessing\", \"param_args\": [], \"param_kwargs\": {\"with_mean\": true, \"with_std\": false}, \"prepared_kwargs\": {}, \"spec_class\": \"preproc\"}, {\"class_name\": \"LassoLars\", \"module\": \"sklearn.linear_model\", \"param_args\": [], \"param_kwargs\": {\"alpha\": 0.001, \"normalize\": true}, \"prepared_kwargs\": {}, \"spec_class\": \"sklearn\"}], \"pipeline_id\": \"5adc0a4fe02504a586f09a4fcbb241f9a4012062\"}", + "training_percent": "100", + "predicted_cost": "0.062226144097381045", + "iteration": "5", + "run_template": "automl_child", + "run_preprocessor": "StandardScalerWrapper", + "run_algorithm": "LassoLars", + "conda_env_data_location": "aml://artifact/ExperimentRun/dcid.AutoML_ad912b2d-6467-4f32-a616-dbe4af6dd8fc_5/outputs/conda_env_v_1_0_0.yml", + "model_name": "AutoMLad912b2d65", + "scoring_data_location": "aml://artifact/ExperimentRun/dcid.AutoML_ad912b2d-6467-4f32-a616-dbe4af6dd8fc_5/outputs/scoring_file_v_1_0_0.py", + "model_data_location": "aml://artifact/ExperimentRun/dcid.AutoML_ad912b2d-6467-4f32-a616-dbe4af6dd8fc_5/outputs/model.pkl" + } + }, + "specversion": "1.0", + "operationId": "RunCompletedEventName", + "title": "RunCompleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/run_status_changed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/run_status_changed.json new file mode 100644 index 0000000000000..41124b425b1dd --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/run_status_changed.json @@ -0,0 +1,33 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.MachineLearningServices/workspaces/{workspace-name}", + "subject": "experiments/0fa9dfaa-cba3-4fa7-b590-23e48548f5c1/runs/AutoML_ad912b2d-6467-4f32-a616-dbe4af6dd8fc_5", + "type": "Microsoft.MachineLearningServices.RunStatusChanged", + "time": "2017-06-26T18:41:00.9584103Z", + "id": "831e1650-001e-001b-66ab-eeb76e069631", + "data": { + "experimentId": "0fa9dfaa-cba3-4fa7-b590-23e48548f5c1", + "experimentName": "automl-local-regression", + "runId": "AutoML_ad912b2d-6467-4f32-a616-dbe4af6dd8fc_5", + "runType": null, + "runTags": {}, + "runProperties": { + "runTemplate": "automl_child", + "pipeline_id": "5adc0a4fe02504a586f09a4fcbb241f9a4012062", + "pipeline_spec": "{\"objects\": [{\"class_name\": \"StandardScaler\", \"module\": \"sklearn.preprocessing\", \"param_args\": [], \"param_kwargs\": {\"with_mean\": true, \"with_std\": false}, \"prepared_kwargs\": {}, \"spec_class\": \"preproc\"}, {\"class_name\": \"LassoLars\", \"module\": \"sklearn.linear_model\", \"param_args\": [], \"param_kwargs\": {\"alpha\": 0.001, \"normalize\": true}, \"prepared_kwargs\": {}, \"spec_class\": \"sklearn\"}], \"pipeline_id\": \"5adc0a4fe02504a586f09a4fcbb241f9a4012062\"}", + "training_percent": "100", + "predicted_cost": "0.062226144097381045", + "iteration": "5", + "run_template": "automl_child", + "run_preprocessor": "StandardScalerWrapper", + "run_algorithm": "LassoLars", + "conda_env_data_location": "aml://artifact/ExperimentRun/dcid.AutoML_ad912b2d-6467-4f32-a616-dbe4af6dd8fc_5/outputs/conda_env_v_1_0_0.yml", + "model_name": "AutoMLad912b2d65", + "scoring_data_location": "aml://artifact/ExperimentRun/dcid.AutoML_ad912b2d-6467-4f32-a616-dbe4af6dd8fc_5/outputs/scoring_file_v_1_0_0.py", + "model_data_location": "aml://artifact/ExperimentRun/dcid.AutoML_ad912b2d-6467-4f32-a616-dbe4af6dd8fc_5/outputs/model.pkl" + }, + "runStatus": "failed" + }, + "specversion": "1.0", + "operationId": "RunStatusChangedEventName", + "title": "RunStatusChanged" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/scaling_completed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/scaling_completed.json new file mode 100644 index 0000000000000..c007866eaa7dc --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/scaling_completed.json @@ -0,0 +1,15 @@ +{ + "source": "/subscriptions/{subscription_id}/resourceGroups/{resource_group_name}/providers/Microsoft.Cache/Redis/{cache_name}", + "subject": "ScalingCompleted", + "type": "Microsoft.Cache.ScalingCompleted", + "time": "2020-12-09T13:50:19.9995668-08:00", + "id": "9b87886d-21a5-4af5-8e3e-10c4b8dac73b", + "data": { + "name": "ScalingCompleted", + "timestamp": "2020-12-09T13:50:19.9995668-08:00", + "status": "Succeeded" + }, + "specversion": "1.0", + "operationId": "ScalingCompletedEventName", + "title": "ScalingCompleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/script_execution_failed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/script_execution_failed.json new file mode 100644 index 0000000000000..21b716b08bc5c --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/script_execution_failed.json @@ -0,0 +1,16 @@ +{ + "source": "/subscriptions/{subscription_id}/resourceGroups/{resource_group_name}/providers/Microsoft.AVS/privateClouds/{sddc_name}", + "subject": "/scriptExecutions/{execution_name}", + "type": "Microsoft.AVS.ScriptExecutionFailed", + "time": "2023-12-09T16:50:19.9995668-05:00", + "id": "9b87886d-21a5-4af5-8e3e-10c4b8dac73b", + "data": { + "operationId": "fe1cb595-71c8-47d7-b505-60d39a44d53d", + "failureMessage": "05/04/2023 03:15:40 Get-SpbmStoragePolicy SpbmStoragePolicy with name ' RAID-5 FTT-1' was not found using the specified filter(s).", + "cmdletId": "Microsoft.AVS.Management@5.3.70/Set-LocationStoragePolicy", + "output": [] + }, + "specVersion": "1.0", + "operationId": "ScriptExecutionFailedEventName", + "title": "ScriptExecutionFailed" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/secret_new_version_created.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/secret_new_version_created.json new file mode 100644 index 0000000000000..6c5e1db34ea88 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/secret_new_version_created.json @@ -0,0 +1,19 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/sample-rg/providers/Microsoft.KeyVault/vaults/sample-kv", + "subject": "newsecret", + "type": "Microsoft.KeyVault.SecretNewVersionCreated", + "time": "2019-07-25T01:08:33.1036736Z", + "id": "00eccf70-95a7-4e7c-8299-2eb17ee9ad64", + "data": { + "Id": "https://sample-kv.vault.azure.net/secrets/newsecret/ee059b2bb5bc48398a53b168c6cdcb10", + "VaultName": "sample-kv", + "ObjectType": "Secret", + "ObjectName": "newsecret", + "Version": "ee059b2bb5bc48398a53b168c6cdcb10", + "NBF": "1559081980", + "EXP": "1559082102" + }, + "specversion": "1.0", + "operationId": "SecretNewVersionCreatedEventName", + "title": "SecretNewVersionCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_completed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_completed.json new file mode 100644 index 0000000000000..395c39773a09b --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_completed.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{site-name}", + "subject": "/Microsoft.Web/sites/{site-name}", + "type": "Microsoft.Web.SlotSwapCompleted", + "time": "2020-01-28T18:26:51.7194887Z", + "id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8", + "data": { + "appEventTypeDetail": null, + "name": "{site-name}", + "clientRequestId": "922f4841-20d9-4dd6-8c5b-23f0d85e5592", + "correlationRequestId": "9ac46505-2b8a-4e06-834c-05ffbe2e8c3a", + "requestId": "765117aa-eaf8-4bd2-a644-1dbf69c7b0fd", + "address": "/websystems/WebSites/web/subscriptions/{subscription-id}/webspaces/{webspace}/sites/{site-name}/slots?Command=SWAP&targetSlot=production", + "verb": "POST", + "sourceSlot": "staging", + "targetSlot": "production" + }, + "specversion": "1.0", + "operationId": "SlotSwapCompletedEventName", + "title": "SlotSwapCompleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_failed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_failed.json new file mode 100644 index 0000000000000..4e76796eac0ab --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_failed.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{site-name}", + "subject": "/Microsoft.Web/sites/{site-name}", + "type": "Microsoft.Web.SlotSwapFailed", + "time": "2020-01-28T18:26:51.7194887Z", + "id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8", + "data": { + "appEventTypeDetail": null, + "name": "{site-name}", + "clientRequestId": "922f4841-20d9-4dd6-8c5b-23f0d85e5592", + "correlationRequestId": "9ac46505-2b8a-4e06-834c-05ffbe2e8c3a", + "requestId": "765117aa-eaf8-4bd2-a644-1dbf69c7b0fd", + "address": "/websystems/WebSites/web/subscriptions/{subscription-id}/webspaces/{webspace}/sites/{site-name}/slots?Command=SWAP&targetSlot=production", + "verb": "POST", + "sourceSlot": "staging", + "targetSlot": "production" + }, + "specversion": "1.0", + "operationId": "SlotSwapFailedEventName", + "title": "SlotSwapFailed" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_started.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_started.json new file mode 100644 index 0000000000000..1c386ba0d793d --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_started.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{site-name}", + "subject": "/Microsoft.Web/sites/{site-name}", + "type": "Microsoft.Web.SlotSwapStarted", + "time": "2020-01-28T18:26:51.7194887Z", + "id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8", + "data": { + "appEventTypeDetail": null, + "name": "{site-name}", + "clientRequestId": "922f4841-20d9-4dd6-8c5b-23f0d85e5592", + "correlationRequestId": "9ac46505-2b8a-4e06-834c-05ffbe2e8c3a", + "requestId": "765117aa-eaf8-4bd2-a644-1dbf69c7b0fd", + "address": "/websystems/WebSites/web/subscriptions/{subscription-id}/webspaces/{webspace}/sites/{site-name}/slots?Command=SWAP&targetSlot=production", + "verb": "POST", + "sourceSlot": "staging", + "targetSlot": "production" + }, + "specversion": "1.0", + "operationId": "SlotSwapStartedEventName", + "title": "SlotSwapStarted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_with_preview_cancelled.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_with_preview_cancelled.json new file mode 100644 index 0000000000000..761b40621e3e9 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_with_preview_cancelled.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{site-name}", + "subject": "/Microsoft.Web/sites/{site-name}", + "type": "Microsoft.Web.SlotSwapWithPreviewCancelled", + "time": "2020-01-28T18:26:51.7194887Z", + "id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8", + "data": { + "appEventTypeDetail": null, + "name": "{site-name}", + "clientRequestId": "922f4841-20d9-4dd6-8c5b-23f0d85e5592", + "correlationRequestId": "9ac46505-2b8a-4e06-834c-05ffbe2e8c3a", + "requestId": "765117aa-eaf8-4bd2-a644-1dbf69c7b0fd", + "address": "/websystems/WebSites/web/subscriptions/{subscription-id}/webspaces/{webspace}/sites/{site-name}/slots?Command=SWAP&targetSlot=production", + "verb": "POST", + "sourceSlot": "staging", + "targetSlot": "production" + }, + "specversion": "1.0", + "operationId": "SlotSwapWithPreviewCancelledEventName", + "title": "SlotSwapWithPreviewCancelled" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_with_preview_started.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_with_preview_started.json new file mode 100644 index 0000000000000..9927ec90d80a2 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/slot_swap_with_preview_started.json @@ -0,0 +1,21 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{site-name}", + "subject": "/Microsoft.Web/sites/{site-name}", + "type": "Microsoft.Web.SlotSwapWithPreviewStarted", + "time": "2020-01-28T18:26:51.7194887Z", + "id": "7c5d6de5-eb70-4de2-b788-c52a544e68b8", + "data": { + "appEventTypeDetail": null, + "name": "{site-name}", + "clientRequestId": "922f4841-20d9-4dd6-8c5b-23f0d85e5592", + "correlationRequestId": "9ac46505-2b8a-4e06-834c-05ffbe2e8c3a", + "requestId": "765117aa-eaf8-4bd2-a644-1dbf69c7b0fd", + "address": "/websystems/WebSites/web/subscriptions/{subscription-id}/webspaces/{webspace}/sites/{site-name}/slots?Command=SWAP&targetSlot=production", + "verb": "POST", + "sourceSlot": "staging", + "targetSlot": "production" + }, + "specversion": "1.0", + "operationId": "SlotSwapWithPreviewStartedEventName", + "title": "SlotSwapWithPreviewStarted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/sms_delivery_report_received.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/sms_delivery_report_received.json new file mode 100644 index 0000000000000..c02ecd2a836a2 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/sms_delivery_report_received.json @@ -0,0 +1,25 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}", + "subject": "/phonenumber/15555555555", + "type": "Microsoft.Communication.SMSDeliveryReportReceived", + "time": "2020-09-18T00:22:20.0000000Z", + "id": "Outgoing_202009180022138813a09b-0cbf-4304-9b03-1546683bb910", + "data": { + "MessageId": "Outgoing_202009180022138813a09b-0cbf-4304-9b03-1546683bb910", + "From": "15555555555", + "To": "+15555555555", + "DeliveryStatus": "Delivered", + "DeliveryStatusDetails": "No error.", + "ReceivedTimestamp": "2020-09-18T00:22:20.2855749Z", + "DeliveryAttempts": [ + { + "Timestamp": "2020-09-18T00:22:14.9315918Z", + "SegmentsSucceeded": 1, + "SegmentsFailed": 0 + } + ] + }, + "specversion": "1.0", + "operationId": "SMSDeliveryReportReceivedEventName", + "title": "SMSDeliveryReportReceived" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/sms_received.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/sms_received.json new file mode 100644 index 0000000000000..0c5a91ed91405 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/sms_received.json @@ -0,0 +1,17 @@ +{ + "source": "/subscriptions/50ad1522-5c2c-4d9a-a6c8-67c11ecb75b8/resourcegroups/acse2e/providers/microsoft.communication/communicationservices/{communication-services-resource-name}", + "subject": "/phonenumber/15555555555", + "type": "Microsoft.Communication.SMSReceived", + "time": "2020-09-18T00:27:47.0000000Z", + "id": "Incoming_20200918002745d29ebbea-3341-4466-9690-0a03af35228e", + "data": { + "MessageId": "Incoming_20200918002745d29ebbea-3341-4466-9690-0a03af35228e", + "From": "15555555555", + "To": "15555555555", + "Message": "Great to connect with ACS events", + "ReceivedTimestamp": "2020-09-18T00:27:45.32Z" + }, + "specversion": "1.0", + "operationId": "SMSReceivedEventName", + "title": "SMSReceived" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/snapshot_created.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/snapshot_created.json new file mode 100644 index 0000000000000..2250fb4ec54fc --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/snapshot_created.json @@ -0,0 +1,15 @@ +{ + "source": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/microsoft.appconfiguration/configurationstores/contoso", + "subject": "https://contoso.azconfig.io/kvsnapshots/Foo", + "type": "Microsoft.AppConfiguration.SnapshotCreated", + "time": "2023-09-02T20:05:03.0000000Z", + "id": "84e17ea4-66db-4b54-8050-df8f7763f87b", + "data": { + "name": "Foo", + "etag": "FnUExLaj2moIi4tJX9AXn9sakm0", + "syncToken": "zAJw6V16=Njo1IzUxNjQ2NzM=;sn=5164673" + }, + "specversion": "1.0", + "operationId": "SnapshotCreatedEventName", + "title": "SnapshotCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/snapshot_modified.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/snapshot_modified.json new file mode 100644 index 0000000000000..698ba7dfd592a --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/snapshot_modified.json @@ -0,0 +1,15 @@ +{ + "source": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testrg/providers/microsoft.appconfiguration/configurationstores/contoso", + "subject": "https://contoso.azconfig.io/snapshots/Foo", + "type": "Microsoft.AppConfiguration.SnapshotModified", + "time": "2023-09-03T20:05:03.0000000Z", + "id": "84e17ea4-66db-4b54-8050-df8f7763f87b", + "data": { + "name": "Foo", + "etag": "FnUExLaj2moIi4tJX9AXn9sakm0", + "syncToken": "zAJw6V16=Njo1IzUxNjQ2NzM=;sn=5164673" + }, + "specversion": "1.0", + "operationId": "SnapshotModifiedEventName", + "title": "SnapshotModified" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/storage_task_assignment_completed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/storage_task_assignment_completed.json new file mode 100644 index 0000000000000..9b1b08148018e --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/storage_task_assignment_completed.json @@ -0,0 +1,17 @@ +{ + "source": "/subscriptions/c86a9c18-8373-41fa-92d4-1d7bdc16977b/resourceGroups/shubhajTestRG/providers/Microsoft.Storage/storageAccounts/canaryfns", + "subject": "DataManagement/StorageActions/StorageTaskAssignments", + "type": "Microsoft.Storage.StorageTaskAssignmentCompleted", + "time": "2023-11-27T23:09:21Z", + "id": "dd17c35c-e68a-437d be15-5417820310d2", + "data": { + "status": "Succeeded", + "completedDateTime": "2023-11-27T23:09:21Z", + "taskExecutionId": "testtest2-2023-11-27T21:16:43.4491131Z", + "taskName": "dizbbcanary2", + "summaryReportBlobUrl": "https://canaryfns.blob.core.windows.net/reports/dizbbcanary2/testtest2/2023-11-27T21:17:53/SummaryReport.json" + }, + "specversion": "1.0", + "operationId": "StorageTaskAssignmentCompletedEventName", + "title": "StorageTaskAssignmentCompleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/storage_task_assignment_queued.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/storage_task_assignment_queued.json new file mode 100644 index 0000000000000..ff15df34b81c5 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/storage_task_assignment_queued.json @@ -0,0 +1,14 @@ +{ + "source": "/subscriptions/c86a9c18-8373-41fa-92d4-1d7bdc16977b/resourceGroups/shubhajTestRG/providers/Microsoft.Storage/storageAccounts/canaryfns", + "subject": "DataManagement/StorageActions/StorageTaskAssignments", + "type": "Microsoft.Storage.StorageTaskAssignmentQueued", + "time": "2023-11-27T21:17:53Z", + "id": "59ff3f6f-696c-4cd2-a206-8012fc1a73f2", + "data": { + "queuedDateTime": "2023-11-27T21:17:53Z", + "taskExecutionId": "testtest2-2023-11-27T21:16:43.4491131Z" + }, + "specversion": "1.0", + "operationId": "StorageTaskAssignmentQueuedEventName", + "title": "StorageTaskAssignmentQueued" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/storage_task_completed.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/storage_task_completed.json new file mode 100644 index 0000000000000..e38ef4e3057c9 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/storage_task_completed.json @@ -0,0 +1,17 @@ +{ + "source": "/subscriptions/c86a9c18-8373-41fa-92d4-1d7bdc16977b/resourceGroups/shulin-rg/providers/Microsoft.Storage/storageAccounts/shulinstcanest2", + "subject": "DataManagement/StorageTasks", + "type": "Microsoft.Storage.StorageTaskCompleted", + "time": "2023-03-23T16:52:58Z", + "id": "b34b3b93-a64d-41ea-aba4-d55f2d29190b", + "data": { + "status": "Succeeded", + "completedDateTime": "2023-03-23T16:52:58Z", + "taskExecutionId": "deletetest-2023-03-23T16:42:33.8658256Z_2023-03-23T16:42:58.8983000Z", + "taskName": "delete123", + "summaryReportBlobUrl": "https://shulinstcanest2.blob.core.windows.net/report/delete123_deletetest_2023-03-23T16:43:50/SummaryReport.json" + }, + "specversion": "1.0", + "operationId": "StorageTaskCompletedEventName", + "title": "StorageTaskCompleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/storage_task_queued.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/storage_task_queued.json new file mode 100644 index 0000000000000..443462c3c0f41 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/storage_task_queued.json @@ -0,0 +1,14 @@ +{ + "source": "/subscriptions/c86a9c18-8373-41fa-92d4-1d7bdc16977b/resourceGroups/shulin-rg/providers/Microsoft.Storage/storageAccounts/shulinstcanest2", + "subject": "DataManagement/StorageTasks", + "type": "Microsoft.Storage.StorageTaskQueued", + "time": "2023-03-23T16:43:50Z", + "id": "7fddaf06-24e8-4d57-9b66-5b7ab920a626", + "data": { + "queuedDateTime": "2023-03-23T16:43:50Z", + "taskExecutionId": "deletetest-2023-03-23T16:42:33.8658256Z_2023-03-23T16:42:58.8983000Z" + }, + "specversion": "1.0", + "operationId": "StorageTaskQueuedEventName", + "title": "StorageTaskQueued" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/subscriptionCreated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/subscriptionCreated.json new file mode 100644 index 0000000000000..99f8106853204 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/subscriptionCreated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/subscriptions/{subscriptionId}", + "type": "Microsoft.ApiManagement.SubscriptionCreated", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "831e1650-001e-001b-66ab-eeb76e069631", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/subscriptions/{subscriptionId}" + }, + "specversion": "1.0", + "operationId": "SubscriptionCreatedEventName", + "title": "SubscriptionCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/subscriptionDeleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/subscriptionDeleted.json new file mode 100644 index 0000000000000..5ae2c599d7c6d --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/subscriptionDeleted.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/subscriptions/{subscriptionId}", + "type": "Microsoft.ApiManagement.SubscriptionDeleted", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "831e1650-001e-001b-66ab-eeb76e069631", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/subscriptions/{subscriptionId}" + }, + "specversion": "1.0", + "operationId": "SubscriptionDeletedEventName", + "title": "SubscriptionDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/subscriptionUpdated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/subscriptionUpdated.json new file mode 100644 index 0000000000000..d46f3884cbd49 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/subscriptionUpdated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/subscriptions/{subscriptionId}", + "type": "Microsoft.ApiManagement.SubscriptionUpdated", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "831e1650-001e-001b-66ab-eeb76e069631", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/subscriptions/{subscriptionId}" + }, + "specversion": "1.0", + "operationId": "SubscriptionUpdatedEventName", + "title": "SubscriptionUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/userCreated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/userCreated.json new file mode 100644 index 0000000000000..18bbb719f7efe --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/userCreated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/users/apimuser-contoso-com", + "type": "Microsoft.ApiManagement.UserCreated", + "time": "2021-07-02T00:47:47.8237532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/users/apimuser-contoso-com" + }, + "specversion": "1.0", + "operationId": "UserCreatedEventName", + "title": "UserCreated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/userDeleted.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/userDeleted.json new file mode 100644 index 0000000000000..09da565dd7c1f --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/userDeleted.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/users/apimuser-contoso-com", + "type": "Microsoft.ApiManagement.UserDeleted", + "time": "2021-07-02T00:47:47.8536532Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/users/apimuser-contoso-com" + }, + "specversion": "1.0", + "operationId": "UserDeletedEventName", + "title": "UserDeleted" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/userUpdated.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/userUpdated.json new file mode 100644 index 0000000000000..1f13dfec59502 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/userUpdated.json @@ -0,0 +1,13 @@ +{ + "source": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}", + "subject": "/users/apimuser-contoso-com", + "type": "Microsoft.ApiManagement.UserUpdated", + "time": "2021-07-02T00:47:48.8269769Z", + "id": "92c502f2-a966-42a7-a428-d3b319844544", + "data": { + "resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{your-rg}/providers/Microsoft.ApiManagement/service/{your-APIM-instance}/users/apimuser-contoso-com" + }, + "specversion": "1.0", + "operationId": "UserUpdatedEventName", + "title": "UserUpdated" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/user_disconnected.json b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/user_disconnected.json new file mode 100644 index 0000000000000..add7b982111d4 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/examples/2024-01-01/user_disconnected.json @@ -0,0 +1,18 @@ +{ + "source": "/subscriptions/3364013b-4c5c-4dc3-953a-072f091c89a7/resourcegroups/testresources/providers/microsoft.communication/communicationservices/vikramacstestresource", + "subject": "user/8:acs:5354158b-17b7-489c-9380-95d8821ff76b_0000000c-6c47-7dfd-6d70-224822000cfb", + "type": "Microsoft.Communication.UserDisconnected", + "time": "2021-09-09T21:13:45.0000000Z", + "id": "93fa5460-7d6c-4fb7-bbb7-2d56159e98d9", + "data": { + "userCommunicationIdentifier": { + "rawId": "8:acs:5354158b-17b7-489c-9380-95d8821ff76b_0000000c-6c47-7dfd-6d70-224822000cfb", + "communicationUser": { + "id": "8:acs:5354158b-17b7-489c-9380-95d8821ff76b_0000000c-6c47-7dfd-6d70-224822000cfb" + } + } + }, + "specversion": "1.0", + "operationId": "UserDisconnectedEventName", + "title": "UserDisconnected" +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/main.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/main.tsp new file mode 100644 index 0000000000000..fdad98970413f --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/main.tsp @@ -0,0 +1,41 @@ +import "@typespec/versioning"; + +import "./ApiManagement.tsp"; +import "./AppConfiguration.tsp"; +import "./AVS.tsp"; +import "./AzureCommunicationServices.tsp"; +import "./ContainerRegistry.tsp"; +import "./ContainerService.tsp"; +import "./DataBox.tsp"; +import "./EventHub.tsp"; +import "./Maps.tsp"; +import "./IotHub.tsp"; +import "./HealthcareApis.tsp"; +import "./KeyVault.tsp"; +import "./MachineLearningServices.tsp"; +import "./MediaServices.tsp"; +import "./PolicyInsights.tsp"; +import "./RedisCache.tsp"; +import "./Resources.tsp"; +import "./ServiceBus.tsp"; +import "./SignalRService.tsp"; +import "./Storage.tsp"; +import "./Web.tsp"; +import "./EventGrid.tsp"; +import "./ResourceNotifications.tsp"; + +import "./propertyNameOverride.tsp"; + +/** Azure Messaging EventGrid SystemEvents */ +@service({ + title: "Azure.Messaging.SystemEvents", +}) +@versioned(ServiceApiVersions) +namespace Microsoft.EventGrid.SystemEvents { + using TypeSpec.Versioning; + + #suppress "@azure-tools/typespec-azure-core/documentation-required" "https://github.com/Azure/typespec-azure/issues/3107" + enum ServiceApiVersions { + v2024_01_01: "2024-01-01", + } +} diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/propertyNameOverride.tsp b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/propertyNameOverride.tsp new file mode 100644 index 0000000000000..1752c17d9cb0c --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/propertyNameOverride.tsp @@ -0,0 +1,131 @@ +import "./AzureCommunicationServices.tsp"; +import "./EventHub.tsp"; +import "./HealthcareApis.tsp"; +import "./IotHub.tsp"; +import "./ResourceNotifications.tsp"; +import "./Storage.tsp"; +import "./DataBox.tsp"; +import "./EventGrid.tsp"; + +import "@azure-tools/typespec-client-generator-core"; + +using Azure.ClientGenerator.Core; + +@@clientName(Microsoft.EventGrid.SystemEvents.AcsIncomingCallEventData.to, + "toCommunicationIdentifier", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.AcsIncomingCallEventData.from, + "fromCommunicationIdentifier", + "autorest" +); + +@@clientName(Microsoft.EventGrid.SystemEvents.AcsEmailDeliveryReportReceivedEventData.deliveryAttemptTimeStamp, + "deliveryAttemptTimestamp", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.AcsEmailEngagementTrackingReportReceivedEventData.userActionTimeStamp, + "userActionTimestamp", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.AcsEmailEngagementTrackingReportReceivedEventData.engagementType, + "engagement", + "autorest" +); + +@@clientName(Microsoft.EventGrid.SystemEvents.EventHubCaptureFileCreatedEventData.fileUrl, + "fileurl", + "autorest" +); + +@@clientName(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceCreatedEventData.resourceFhirAccount, + "FhirServiceHostName", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceCreatedEventData.resourceFhirId, + "FhirResourceId", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceCreatedEventData.resourceVersionId, + "FhirResourceVersionId", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceCreatedEventData.resourceType, + "FhirResourceType", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceUpdatedEventData.resourceFhirAccount, + "FhirServiceHostName", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceUpdatedEventData.resourceFhirId, + "FhirResourceId", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceUpdatedEventData.resourceVersionId, + "FhirResourceVersionId", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceUpdatedEventData.resourceType, + "FhirResourceType", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceDeletedEventData.resourceFhirAccount, + "FhirServiceHostName", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceDeletedEventData.resourceFhirId, + "FhirResourceId", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceDeletedEventData.resourceVersionId, + "FhirResourceVersionId", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.HealthcareFhirResourceDeletedEventData.resourceType, + "FhirResourceType", + "autorest" +); + +@@clientName(Microsoft.EventGrid.SystemEvents.DeviceTwinMetadata.lastUpdated, + "$lastUpdated", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.DeviceTwinProperties.metadata, + "$metadata", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.DeviceTwinProperties.version, + "$version", + "autorest" +); + +@@clientName(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceUpdatedEventData.resourceInfo, + "resourceDetails", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceUpdatedEventData.operationalInfo, + "operationalDetails", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceDeletedEventData.resourceInfo, + "resourceDetails", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.ResourceNotificationsResourceDeletedEventData.operationalInfo, + "operationalDetails", + "autorest" +); + +@@clientName(Microsoft.EventGrid.SystemEvents.StorageTaskAssignmentQueuedEventData.queuedDateTime, + "queuedOn", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.StorageTaskAssignmentCompletedEventData.completedDateTime, + "completedOn", + "autorest" +); +@@clientName(Microsoft.EventGrid.SystemEvents.StorageTaskAssignmentCompletedEventData.summaryReportBlobUrl, + "summaryReportBlobUri", + "autorest" +); diff --git a/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/tspconfig.yaml b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/tspconfig.yaml new file mode 100644 index 0000000000000..a53f8a5522395 --- /dev/null +++ b/specification/eventgrid/Azure.Messaging.EventGrid.SystemEvents/tspconfig.yaml @@ -0,0 +1,29 @@ +parameters: + "service-dir": + default: "sdk/eventgrid" + "service-directory-name": + default: "eventgrid" +emit: [ + "@azure-tools/typespec-autorest", +] +linter: + extends: + - "@azure-tools/typespec-azure-core/all" +options: + "@azure-tools/typespec-autorest": + emitter-output-dir: "{project-root}/.." + examples-directory: examples + omit-unreachable-types: false + output-file: "{azure-resource-provider-folder}/Microsoft.EventGrid/{version-status}/{version}/SystemEvents.json" + azure-resource-provider-folder: "data-plane" + "@azure-tools/typespec-python": + package-pprint-name: "\"Azure Event Grid System Events\"" + package-version: 4.12.0b1 + package-dir: "azure-eventgrid" + package-name: "{package-dir}" + emitter-output-dir: "{project-root}/{service-dir}/{package-name}" + # Uncomment this line and add "@azure-tools/typespec-csharp" to your package.json to generate C# code + "@azure-tools/typespec-csharp": + package-dir: Azure.Messaging.EventGrid.SystemEvents + model-namespace: false + namespace: Azure.Messaging.EventGrid.SystemEvents diff --git a/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/ApiCenter.json b/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/ApiCenter.json new file mode 100644 index 0000000000000..228b383e3601e --- /dev/null +++ b/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/ApiCenter.json @@ -0,0 +1,75 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-01-01", + "title": "Schema of Azure API Center service events published to Azure Event Grid", + "description": "Describes the schema of the Azure API Center service events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent." + }, + "paths": {}, + "definitions": { + "ApiCenterApiDefinitionAddedEventData": { + "description": "Schema of the data property of an EventGridEvent for a Microsoft.ApiCenter.ApiDefinitionAdded event.", + "type": "object", + "properties": { + "title": { + "type": "string", + "description": "API definition title." + }, + "description": { + "type": "string", + "description": "API definition description." + }, + "specification": { + "$ref": "#/definitions/ApiCenterApiSpecification" + } + }, + "x-ms-examples": { + "userCreatedCloudEventsSchema": { + "$ref": "./examples/cloud-events-schema/api_definition_added.json" + }, + "userCreatedEventGridSchema": { + "$ref": "./examples/event-grid-schema/api_definition_added.json" + } + } + }, + "ApiCenterApiDefinitionUpdatedEventData": { + "description": "Schema of the data property of an EventGridEvent for a Microsoft.ApiCenter.ApiDefinitionUpdated event.", + "type": "object", + "properties": { + "title": { + "type": "string", + "description": "API definition title." + }, + "description": { + "type": "string", + "description": "API definition description." + }, + "specification": { + "$ref": "#/definitions/ApiCenterApiSpecification" + } + }, + "x-ms-examples": { + "userCreatedCloudEventsSchema": { + "$ref": "./examples/cloud-events-schema/api_definition_updated.json" + }, + "userCreatedEventGridSchema": { + "$ref": "./examples/event-grid-schema/api_definition_updated.json" + } + } + }, + "ApiCenterApiSpecification": { + "type": "object", + "description": "API specification details.", + "properties": { + "name": { + "type": "string", + "description": "Specification name." + }, + "version": { + "type": "string", + "description": "Specification version." + } + } + } + } +} diff --git a/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/examples/cloud-events-schema/api_definition_added.json b/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/examples/cloud-events-schema/api_definition_added.json new file mode 100644 index 0000000000000..01e4892075ae4 --- /dev/null +++ b/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/examples/cloud-events-schema/api_definition_added.json @@ -0,0 +1,16 @@ +{ + "source": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-resources/providers/Microsoft.ApiCenter/services", + "subject": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-resources/providers/Microsoft.ApiCenter/services/contoso/workspaces/default/apis/echo-api/versions/2023-01-01/definitions/openapi", + "type": "Microsoft.ApiCenter.ApiDefinitionAdded", + "time": "2024-03-01T00:00:00.0000000Z", + "id": "00000000-0000-0000-0000-000000000000", + "data": { + "title": "OpenAPI", + "description": "Default spec", + "specification": { + "name": "openapi", + "version": "3.0.1" + } + }, + "specversion": "1.0" +} diff --git a/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/examples/cloud-events-schema/api_definition_updated.json b/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/examples/cloud-events-schema/api_definition_updated.json new file mode 100644 index 0000000000000..968424ff9b786 --- /dev/null +++ b/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/examples/cloud-events-schema/api_definition_updated.json @@ -0,0 +1,16 @@ +{ + "source": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-resources/providers/Microsoft.ApiCenter/services", + "subject": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-resources/providers/Microsoft.ApiCenter/services/contoso/workspaces/default/apis/echo-api/versions/2023-01-01/definitions/openapi", + "type": "Microsoft.ApiCenter.ApiDefinitionUpdated", + "time": "2024-03-01T00:00:00.0000000Z", + "id": "00000000-0000-0000-0000-000000000000", + "data": { + "title": "OpenAPI", + "description": "Default spec", + "specification": { + "name": "openapi", + "version": "3.0.1" + } + }, + "specversion": "1.0" +} diff --git a/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/examples/event-grid-schema/api_definition_added.json b/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/examples/event-grid-schema/api_definition_added.json new file mode 100644 index 0000000000000..5ea99c9c97bf5 --- /dev/null +++ b/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/examples/event-grid-schema/api_definition_added.json @@ -0,0 +1,17 @@ +{ + "topic": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-resources/providers/Microsoft.ApiCenter/services", + "subject": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-resources/providers/Microsoft.ApiCenter/services/contoso/workspaces/default/apis/echo-api/versions/2023-01-01/definitions/openapi", + "eventType": "Microsoft.ApiCenter.ApiDefinitionAdded", + "id": "beb21a5e-401e-002b-3749-928517060431", + "data": { + "title": "OpenAPI", + "description": "Default spec", + "specification": { + "name": "openapi", + "version": "3.0.1" + } + }, + "dataVersion": "1.0.0", + "metadataVersion": "1", + "eventTime": "2024-03-01T00:00:00.0000000Z" +} diff --git a/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/examples/event-grid-schema/api_definition_updated.json b/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/examples/event-grid-schema/api_definition_updated.json new file mode 100644 index 0000000000000..47abc102f3a89 --- /dev/null +++ b/specification/eventgrid/data-plane/Microsoft.ApiCenter/stable/2018-01-01/examples/event-grid-schema/api_definition_updated.json @@ -0,0 +1,17 @@ +{ + "topic": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-resources/providers/Microsoft.ApiCenter/services", + "subject": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-resources/providers/Microsoft.ApiCenter/services/contoso/workspaces/default/apis/echo-api/versions/2023-01-01/definitions/openapi", + "eventType": "Microsoft.ApiCenter.ApiDefinitionUpdated", + "id": "beb21a5e-401e-002b-3749-928517060431", + "data": { + "title": "OpenAPI", + "description": "Default spec", + "specification": { + "name": "openapi", + "version": "3.0.1" + } + }, + "dataVersion": "1.0.0", + "metadataVersion": "1", + "eventTime": "2024-03-01T00:00:00.0000000Z" +} diff --git a/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/SystemEvents.json b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/SystemEvents.json new file mode 100644 index 0000000000000..84a62a7a7bd71 --- /dev/null +++ b/specification/eventgrid/data-plane/Microsoft.EventGrid/stable/2024-01-01/SystemEvents.json @@ -0,0 +1,8423 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure.Messaging.SystemEvents", + "version": "2024-01-01", + "description": "Azure Messaging EventGrid SystemEvents", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "tags": [], + "paths": {}, + "definitions": { + "AcsChatEventBaseProperties": { + "type": "object", + "description": "Schema of common properties of all chat events", + "properties": { + "recipientCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the target user" + }, + "transactionId": { + "type": "string", + "description": "The transaction id will be used as co-relation vector" + }, + "threadId": { + "type": "string", + "description": "The chat thread id" + } + } + }, + "AcsChatEventInThreadBaseProperties": { + "type": "object", + "description": "Schema of common properties of all thread-level chat events", + "properties": { + "transactionId": { + "type": "string", + "description": "The transaction id will be used as co-relation vector" + }, + "threadId": { + "type": "string", + "description": "The chat thread id" + } + } + }, + "AcsChatMessageDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageDeleted event.", + "properties": { + "deleteTime": { + "type": "string", + "format": "date-time", + "description": "The time at which the message was deleted" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatMessageEventBaseProperties" + } + ] + }, + "AcsChatMessageDeletedInThreadEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageDeletedInThread event.", + "properties": { + "deleteTime": { + "type": "string", + "format": "date-time", + "description": "The time at which the message was deleted" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatMessageEventInThreadBaseProperties" + } + ] + }, + "AcsChatMessageEditedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageEdited event.", + "properties": { + "messageBody": { + "type": "string", + "description": "The body of the chat message" + }, + "metadata": { + "type": "object", + "description": "The chat message metadata", + "additionalProperties": { + "type": "string" + } + }, + "editTime": { + "type": "string", + "format": "date-time", + "description": "The time at which the message was edited" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatMessageEventBaseProperties" + } + ] + }, + "AcsChatMessageEditedInThreadEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageEditedInThread event.", + "properties": { + "messageBody": { + "type": "string", + "description": "The body of the chat message" + }, + "metadata": { + "type": "object", + "description": "The chat message metadata", + "additionalProperties": { + "type": "string" + } + }, + "editTime": { + "type": "string", + "format": "date-time", + "description": "The time at which the message was edited" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatMessageEventInThreadBaseProperties" + } + ] + }, + "AcsChatMessageEventBaseProperties": { + "type": "object", + "description": "Schema of common properties of all chat message events", + "properties": { + "messageId": { + "type": "string", + "description": "The chat message id" + }, + "senderCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the sender" + }, + "senderDisplayName": { + "type": "string", + "description": "The display name of the sender" + }, + "composeTime": { + "type": "string", + "format": "date-time", + "description": "The original compose time of the message" + }, + "type": { + "type": "string", + "description": "The type of the message" + }, + "version": { + "type": "integer", + "format": "int64", + "description": "The version of the message" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatEventBaseProperties" + } + ] + }, + "AcsChatMessageEventInThreadBaseProperties": { + "type": "object", + "description": "Schema of common properties of all thread-level chat message events", + "properties": { + "messageId": { + "type": "string", + "description": "The chat message id" + }, + "senderCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the sender" + }, + "senderDisplayName": { + "type": "string", + "description": "The display name of the sender" + }, + "composeTime": { + "type": "string", + "format": "date-time", + "description": "The original compose time of the message" + }, + "type": { + "type": "string", + "description": "The type of the message" + }, + "version": { + "type": "integer", + "format": "int64", + "description": "The version of the message" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatEventInThreadBaseProperties" + } + ] + }, + "AcsChatMessageReceivedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageReceived event.", + "properties": { + "messageBody": { + "type": "string", + "description": "The body of the chat message" + }, + "metadata": { + "type": "object", + "description": "The chat message metadata", + "additionalProperties": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatMessageEventBaseProperties" + } + ] + }, + "AcsChatMessageReceivedInThreadEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatMessageReceivedInThread event.", + "properties": { + "messageBody": { + "type": "string", + "description": "The body of the chat message" + }, + "metadata": { + "type": "object", + "description": "The chat message metadata", + "additionalProperties": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatMessageEventInThreadBaseProperties" + } + ] + }, + "AcsChatParticipantAddedToThreadEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadParticipantAdded event.", + "properties": { + "time": { + "type": "string", + "format": "date-time", + "description": "The time at which the user was added to the thread" + }, + "addedByCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the user who added the user" + }, + "participantAdded": { + "$ref": "#/definitions/AcsChatThreadParticipantProperties", + "description": "The details of the user who was added" + }, + "version": { + "type": "integer", + "format": "int64", + "description": "The version of the thread" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatEventInThreadBaseProperties" + } + ] + }, + "AcsChatParticipantAddedToThreadWithUserEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatParticipantAddedToThreadWithUser event.", + "properties": { + "time": { + "type": "string", + "format": "date-time", + "description": "The time at which the user was added to the thread" + }, + "addedByCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the user who added the user" + }, + "participantAdded": { + "$ref": "#/definitions/AcsChatThreadParticipantProperties", + "description": "The details of the user who was added" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatThreadEventBaseProperties" + } + ] + }, + "AcsChatParticipantRemovedFromThreadEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadParticipantRemoved event.", + "properties": { + "time": { + "type": "string", + "format": "date-time", + "description": "The time at which the user was removed to the thread" + }, + "removedByCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the user who removed the user" + }, + "participantRemoved": { + "$ref": "#/definitions/AcsChatThreadParticipantProperties", + "description": "The details of the user who was removed" + }, + "version": { + "type": "integer", + "format": "int64", + "description": "The version of the thread" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatEventInThreadBaseProperties" + } + ] + }, + "AcsChatParticipantRemovedFromThreadWithUserEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatParticipantRemovedFromThreadWithUser event.", + "properties": { + "time": { + "type": "string", + "format": "date-time", + "description": "The time at which the user was removed to the thread" + }, + "removedByCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the user who removed the user" + }, + "participantRemoved": { + "$ref": "#/definitions/AcsChatThreadParticipantProperties", + "description": "The details of the user who was removed" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatThreadEventBaseProperties" + } + ] + }, + "AcsChatThreadCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadCreated event.", + "properties": { + "createdByCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the user who created the thread" + }, + "properties": { + "type": "object", + "description": "The thread properties", + "additionalProperties": {} + }, + "metadata": { + "type": "object", + "description": "The thread metadata", + "additionalProperties": { + "type": "string" + } + }, + "participants": { + "type": "array", + "description": "The list of properties of participants who are part of the thread", + "items": { + "$ref": "#/definitions/AcsChatThreadParticipantProperties" + }, + "x-ms-identifiers": [] + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatThreadEventInThreadBaseProperties" + } + ] + }, + "AcsChatThreadCreatedWithUserEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadCreatedWithUser event.", + "properties": { + "createdByCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the user who created the thread" + }, + "properties": { + "type": "object", + "description": "The thread properties", + "additionalProperties": {} + }, + "metadata": { + "type": "object", + "description": "The thread metadata", + "additionalProperties": { + "type": "string" + } + }, + "participants": { + "type": "array", + "description": "The list of properties of participants who are part of the thread", + "items": { + "$ref": "#/definitions/AcsChatThreadParticipantProperties" + }, + "x-ms-identifiers": [] + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatThreadEventBaseProperties" + } + ] + }, + "AcsChatThreadDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadDeleted event.", + "properties": { + "deletedByCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the user who deleted the thread" + }, + "deleteTime": { + "type": "string", + "format": "date-time", + "description": "The deletion time of the thread" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatThreadEventInThreadBaseProperties" + } + ] + }, + "AcsChatThreadEventBaseProperties": { + "type": "object", + "description": "Schema of common properties of all chat thread events", + "properties": { + "createTime": { + "type": "string", + "format": "date-time", + "description": "The original creation time of the thread" + }, + "version": { + "type": "integer", + "format": "int64", + "description": "The version of the thread" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatEventBaseProperties" + } + ] + }, + "AcsChatThreadEventInThreadBaseProperties": { + "type": "object", + "description": "Schema of common properties of all chat thread events", + "properties": { + "createTime": { + "type": "string", + "format": "date-time", + "description": "The original creation time of the thread" + }, + "version": { + "type": "integer", + "format": "int64", + "description": "The version of the thread" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatEventInThreadBaseProperties" + } + ] + }, + "AcsChatThreadParticipantProperties": { + "type": "object", + "description": "Schema of the chat thread participant", + "properties": { + "displayName": { + "type": "string", + "description": "The name of the user" + }, + "participantCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the user" + }, + "metadata": { + "type": "object", + "description": "The metadata of the user", + "additionalProperties": { + "type": "string" + } + } + } + }, + "AcsChatThreadPropertiesUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadPropertiesUpdated event.", + "properties": { + "editedByCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the user who updated the thread properties" + }, + "editTime": { + "type": "string", + "format": "date-time", + "description": "The time at which the properties of the thread were updated" + }, + "properties": { + "type": "object", + "description": "The updated thread properties", + "additionalProperties": {} + }, + "metadata": { + "type": "object", + "description": "The thread metadata", + "additionalProperties": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatThreadEventInThreadBaseProperties" + } + ] + }, + "AcsChatThreadPropertiesUpdatedPerUserEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadPropertiesUpdatedPerUser event.", + "properties": { + "editedByCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the user who updated the thread properties" + }, + "editTime": { + "type": "string", + "format": "date-time", + "description": "The time at which the properties of the thread were updated" + }, + "metadata": { + "type": "object", + "description": "The thread metadata", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "type": "object", + "description": "The updated thread properties", + "additionalProperties": {} + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatThreadEventBaseProperties" + } + ] + }, + "AcsChatThreadWithUserDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.ChatThreadWithUserDeleted event.", + "properties": { + "deletedByCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the user who deleted the thread" + }, + "deleteTime": { + "type": "string", + "format": "date-time", + "description": "The deletion time of the thread" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsChatThreadEventBaseProperties" + } + ] + }, + "AcsEmailDeliveryReportReceivedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.EmailDeliveryReportReceived event.", + "properties": { + "sender": { + "type": "string", + "description": "The Sender Email Address" + }, + "recipient": { + "type": "string", + "description": "The recipient Email Address" + }, + "messageId": { + "type": "string", + "description": "The Id of the email been sent" + }, + "status": { + "$ref": "#/definitions/AcsEmailDeliveryReportStatus", + "description": "The status of the email. Any value other than Delivered is considered failed." + }, + "deliveryStatusDetails": { + "$ref": "#/definitions/AcsEmailDeliveryReportStatusDetails", + "description": "Detailed information about the status if any" + }, + "deliveryAttemptTimeStamp": { + "type": "string", + "format": "date-time", + "description": "The time at which the email delivery report received timestamp", + "x-ms-client-name": "deliveryAttemptTimestamp" + } + } + }, + "AcsEmailDeliveryReportStatus": { + "type": "string", + "description": "The status of the email. Any value other than Delivered is considered failed.", + "enum": [ + "Bounced", + "Delivered", + "Failed", + "FilteredSpam", + "Quarantined", + "Suppressed" + ], + "x-ms-enum": { + "name": "AcsEmailDeliveryReportStatus", + "modelAsString": true, + "values": [ + { + "name": "Bounced", + "value": "Bounced", + "description": "Hard bounce detected while sending the email" + }, + { + "name": "Delivered", + "value": "Delivered", + "description": "The email was delivered" + }, + { + "name": "Failed", + "value": "Failed", + "description": "The email failed to be delivered" + }, + { + "name": "FilteredSpam", + "value": "FilteredSpam", + "description": "The message was identified as spam and was rejected or blocked (not quarantined)." + }, + { + "name": "Quarantined", + "value": "Quarantined", + "description": "The message was quarantined (as spam, bulk mail, or phishing). For more information, see Quarantined email messages in EOP (EXCHANGE ONLINE PROTECTION)." + }, + { + "name": "Suppressed", + "value": "Suppressed", + "description": "The email was suppressed" + } + ] + } + }, + "AcsEmailDeliveryReportStatusDetails": { + "type": "object", + "description": "Detailed information about the status if any", + "properties": { + "statusMessage": { + "type": "string", + "description": "Detailed status message" + } + } + }, + "AcsEmailEngagementTrackingReportReceivedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.EmailEngagementTrackingReportReceived event.", + "properties": { + "sender": { + "type": "string", + "description": "The Sender Email Address" + }, + "recipient": { + "type": "string", + "description": "The Recipient Email Address" + }, + "messageId": { + "type": "string", + "description": "The Id of the email that has been sent" + }, + "userActionTimeStamp": { + "type": "string", + "format": "date-time", + "description": "The time at which the user interacted with the email", + "x-ms-client-name": "userActionTimestamp" + }, + "engagementContext": { + "type": "string", + "description": "The context of the type of engagement user had with email" + }, + "userAgent": { + "type": "string", + "description": "The user agent interacting with the email" + }, + "engagementType": { + "$ref": "#/definitions/AcsUserEngagement", + "description": "The type of engagement user have with email", + "x-ms-client-name": "engagement" + } + } + }, + "AcsIncomingCallCustomContext": { + "type": "object", + "description": "Custom Context of Incoming Call", + "properties": { + "sipHeaders": { + "type": "object", + "description": "Sip Headers for incoming call", + "additionalProperties": { + "type": "string" + } + }, + "voipHeaders": { + "type": "object", + "description": "Voip Headers for incoming call", + "additionalProperties": { + "type": "string" + } + } + } + }, + "AcsIncomingCallEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.IncomingCall event", + "properties": { + "to": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the target user.", + "x-ms-client-name": "toCommunicationIdentifier" + }, + "from": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the user who initiated the call.", + "x-ms-client-name": "fromCommunicationIdentifier" + }, + "serverCallId": { + "type": "string", + "description": "The Id of the server call" + }, + "callerDisplayName": { + "type": "string", + "description": "Display name of caller." + }, + "customContext": { + "$ref": "#/definitions/AcsIncomingCallCustomContext", + "description": "Custom Context of Incoming Call" + }, + "incomingCallContext": { + "type": "string", + "description": "Signed incoming call context." + }, + "correlationId": { + "type": "string", + "description": "CorrelationId (CallId)." + } + } + }, + "AcsRecordingChunkInfoProperties": { + "type": "object", + "description": "Schema for all properties of Recording Chunk Information.", + "properties": { + "documentId": { + "type": "string", + "description": "The documentId of the recording chunk" + }, + "index": { + "type": "integer", + "format": "int64", + "description": "The index of the recording chunk" + }, + "endReason": { + "type": "string", + "description": "The reason for ending the recording chunk" + }, + "metadataLocation": { + "type": "string", + "description": "The location of the metadata for this chunk" + }, + "contentLocation": { + "type": "string", + "description": "The location of the content for this chunk" + }, + "deleteLocation": { + "type": "string", + "description": "The location to delete all chunk storage" + } + } + }, + "AcsRecordingFileStatusUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RecordingFileStatusUpdated event.", + "properties": { + "recordingStorageInfo": { + "$ref": "#/definitions/AcsRecordingStorageInfoProperties", + "description": "The details of recording storage information" + }, + "recordingStartTime": { + "type": "string", + "format": "date-time", + "description": "The time at which the recording started" + }, + "recordingDurationMs": { + "type": "integer", + "format": "int64", + "description": "The recording duration in milliseconds" + }, + "recordingContentType": { + "$ref": "#/definitions/recordingContentType", + "description": "The recording content type- AudioVideo, or Audio" + }, + "recordingChannelType": { + "$ref": "#/definitions/recordingChannelType", + "description": "The recording channel type - Mixed, Unmixed" + }, + "recordingFormatType": { + "$ref": "#/definitions/recordingFormatType", + "description": "The recording format type - Mp4, Mp3, Wav" + }, + "sessionEndReason": { + "type": "string", + "description": "The reason for ending recording session" + } + } + }, + "AcsRecordingStorageInfoProperties": { + "type": "object", + "description": "Schema for all properties of Recording Storage Information.", + "properties": { + "recordingChunks": { + "type": "array", + "description": "List of details of recording chunks information", + "items": { + "$ref": "#/definitions/AcsRecordingChunkInfoProperties" + }, + "x-ms-identifiers": [] + } + } + }, + "AcsRouterChannelConfiguration": { + "type": "object", + "description": "Router Channel Configuration", + "properties": { + "channelId": { + "type": "string", + "description": "Channel ID for Router Job" + }, + "capacityCostPerJob": { + "type": "integer", + "format": "int32", + "description": "Capacity Cost Per Job for Router Job" + }, + "maxNumberOfJobs": { + "type": "integer", + "format": "int32", + "description": "Max Number of Jobs for Router Job" + } + } + }, + "AcsRouterCommunicationError": { + "type": "object", + "description": "Router Communication Error", + "properties": { + "code": { + "type": "string", + "description": "Router Communication Error Code" + }, + "message": { + "type": "string", + "description": "Router Communication Error Message" + }, + "target": { + "type": "string", + "description": "Router Communication Error Target" + }, + "innererror": { + "$ref": "#/definitions/AcsRouterCommunicationError", + "description": "Router Communication Inner Error" + }, + "details": { + "type": "array", + "description": "List of Router Communication Errors", + "items": { + "$ref": "#/definitions/AcsRouterCommunicationError" + }, + "x-ms-identifiers": [] + } + } + }, + "AcsRouterEventData": { + "type": "object", + "description": "Schema of common properties of all Router events", + "properties": { + "jobId": { + "type": "string", + "description": "Router Event Job ID" + }, + "channelReference": { + "type": "string", + "description": "Router Event Channel Reference" + }, + "channelId": { + "type": "string", + "description": "Router Event Channel ID" + } + } + }, + "AcsRouterJobCancelledEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobCancelled event", + "properties": { + "note": { + "type": "string", + "description": "Router Job Note" + }, + "dispositionCode": { + "type": "string", + "description": "Router Job Disposition Code" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterJobEventData" + } + ] + }, + "AcsRouterJobClassificationFailedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobClassificationFailed event", + "properties": { + "classificationPolicyId": { + "type": "string", + "description": "Router Job Classification Policy Id" + }, + "errors": { + "type": "array", + "description": "Router Job Classification Failed Errors", + "items": { + "$ref": "#/definitions/AcsRouterCommunicationError" + }, + "x-ms-identifiers": [] + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterJobEventData" + } + ] + }, + "AcsRouterJobClassifiedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobClassified event", + "properties": { + "queueDetails": { + "$ref": "#/definitions/AcsRouterQueueDetails", + "description": "Router Job Queue Info" + }, + "classificationPolicyId": { + "type": "string", + "description": "Router Job Classification Policy Id" + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "Router Job Priority" + }, + "attachedWorkerSelectors": { + "type": "array", + "description": "Router Job Attached Worker Selector", + "items": { + "$ref": "#/definitions/AcsRouterWorkerSelector" + }, + "x-ms-identifiers": [] + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterJobEventData" + } + ] + }, + "AcsRouterJobClosedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobClosed event", + "properties": { + "assignmentId": { + "type": "string", + "description": "Router Job Closed Assignment Id" + }, + "workerId": { + "type": "string", + "description": "Router Job Closed Worker Id" + }, + "dispositionCode": { + "type": "string", + "description": "Router Job Closed Disposition Code" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterJobEventData" + } + ] + }, + "AcsRouterJobCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobCompleted event", + "properties": { + "assignmentId": { + "type": "string", + "description": "Router Job Completed Assignment Id" + }, + "workerId": { + "type": "string", + "description": "Router Job Completed Worker Id" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterJobEventData" + } + ] + }, + "AcsRouterJobDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobDeleted event", + "allOf": [ + { + "$ref": "#/definitions/AcsRouterJobEventData" + } + ] + }, + "AcsRouterJobEventData": { + "type": "object", + "description": "Schema of common properties of all Router Job events", + "properties": { + "queueId": { + "type": "string", + "description": "Router Job events Queue Id" + }, + "labels": { + "type": "object", + "description": "Router Job events Labels", + "additionalProperties": { + "type": "string" + } + }, + "tags": { + "type": "object", + "description": "Router Jobs events Tags", + "additionalProperties": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterEventData" + } + ] + }, + "AcsRouterJobExceptionTriggeredEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobExceptionTriggered event", + "properties": { + "ruleKey": { + "type": "string", + "description": "Router Job Exception Triggered Rule Key" + }, + "exceptionRuleId": { + "type": "string", + "description": "Router Job Exception Triggered Rule Id" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterJobEventData" + } + ] + }, + "AcsRouterJobQueuedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobQueued event", + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "description": "Router Job Priority" + }, + "attachedWorkerSelectors": { + "type": "array", + "description": "Router Job Queued Attached Worker Selector", + "items": { + "$ref": "#/definitions/AcsRouterWorkerSelector" + }, + "x-ms-identifiers": [] + }, + "requestedWorkerSelectors": { + "type": "array", + "description": "Router Job Queued Requested Worker Selector", + "items": { + "$ref": "#/definitions/AcsRouterWorkerSelector" + }, + "x-ms-identifiers": [] + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterJobEventData" + } + ] + }, + "AcsRouterJobReceivedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobReceived event", + "properties": { + "jobStatus": { + "$ref": "#/definitions/AcsRouterJobStatus", + "description": "Router Job Received Job Status" + }, + "classificationPolicyId": { + "type": "string", + "description": "Router Job Classification Policy Id" + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "Router Job Priority" + }, + "requestedWorkerSelectors": { + "type": "array", + "description": "Router Job Received Requested Worker Selectors", + "items": { + "$ref": "#/definitions/AcsRouterWorkerSelector" + }, + "x-ms-identifiers": [] + }, + "scheduledOn": { + "type": "string", + "format": "date-time", + "description": "Router Job Received Scheduled Time in UTC" + }, + "unavailableForMatching": { + "type": "boolean", + "description": "Unavailable For Matching for Router Job Received" + } + }, + "required": [ + "unavailableForMatching" + ], + "allOf": [ + { + "$ref": "#/definitions/AcsRouterJobEventData" + } + ] + }, + "AcsRouterJobSchedulingFailedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobSchedulingFailed event", + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "description": "Router Job Priority" + }, + "expiredAttachedWorkerSelectors": { + "type": "array", + "description": "Router Job Scheduling Failed Attached Worker Selector Expired", + "items": { + "$ref": "#/definitions/AcsRouterWorkerSelector" + }, + "x-ms-identifiers": [] + }, + "expiredRequestedWorkerSelectors": { + "type": "array", + "description": "Router Job Scheduling Failed Requested Worker Selector Expired", + "items": { + "$ref": "#/definitions/AcsRouterWorkerSelector" + }, + "x-ms-identifiers": [] + }, + "scheduledOn": { + "type": "string", + "format": "date-time", + "description": "Router Job Scheduling Failed Scheduled Time in UTC" + }, + "failureReason": { + "type": "string", + "description": "Router Job Scheduling Failed Reason" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterJobEventData" + } + ] + }, + "AcsRouterJobStatus": { + "type": "string", + "description": "Acs Router Job Status", + "enum": [ + "PendingClassification", + "Queued", + "Assigned", + "Completed", + "Closed", + "Cancelled", + "ClassificationFailed", + "Created", + "PendingSchedule", + "Scheduled", + "ScheduleFailed", + "WaitingForActivation" + ], + "x-ms-enum": { + "name": "AcsRouterJobStatus", + "modelAsString": true, + "values": [ + { + "name": "PendingClassification", + "value": "PendingClassification", + "description": "Router Job Status Pending Classification" + }, + { + "name": "Queued", + "value": "Queued", + "description": "Router Job Status Queued" + }, + { + "name": "Assigned", + "value": "Assigned", + "description": "Router Job Status Assigned" + }, + { + "name": "Completed", + "value": "Completed", + "description": "Router Job Status Completed" + }, + { + "name": "Closed", + "value": "Closed", + "description": "Router Job Status Closed" + }, + { + "name": "Cancelled", + "value": "Cancelled", + "description": "Router Job Status Cancelled" + }, + { + "name": "ClassificationFailed", + "value": "ClassificationFailed", + "description": "Router Job Status Classification Failed" + }, + { + "name": "Created", + "value": "Created", + "description": "Router Job Status Created" + }, + { + "name": "PendingSchedule", + "value": "PendingSchedule", + "description": "Router Job Status Pending Schedule" + }, + { + "name": "Scheduled", + "value": "Scheduled", + "description": "Router Job Status Scheduled" + }, + { + "name": "ScheduleFailed", + "value": "ScheduleFailed", + "description": "Router Job Status Schedule Failed" + }, + { + "name": "WaitingForActivation", + "value": "WaitingForActivation", + "description": "Router Job Status Waiting For Activation" + } + ] + } + }, + "AcsRouterJobUnassignedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobUnassigned event", + "properties": { + "assignmentId": { + "type": "string", + "description": "Router Job Unassigned Assignment Id" + }, + "workerId": { + "type": "string", + "description": "Router Job Unassigned Worker Id" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterJobEventData" + } + ] + }, + "AcsRouterJobWaitingForActivationEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobWaitingForActivation event", + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "description": "Router Job Waiting For Activation Priority" + }, + "expiredAttachedWorkerSelectors": { + "type": "array", + "description": "Router Job Waiting For Activation Worker Selector Expired", + "items": { + "$ref": "#/definitions/AcsRouterWorkerSelector" + }, + "x-ms-identifiers": [] + }, + "expiredRequestedWorkerSelectors": { + "type": "array", + "description": "Router Job Waiting For Activation Requested Worker Selector Expired", + "items": { + "$ref": "#/definitions/AcsRouterWorkerSelector" + }, + "x-ms-identifiers": [] + }, + "scheduledOn": { + "type": "string", + "format": "date-time", + "description": "Router Job Waiting For Activation Scheduled Time in UTC" + }, + "unavailableForMatching": { + "type": "boolean", + "description": "Router Job Waiting For Activation Unavailable For Matching" + } + }, + "required": [ + "unavailableForMatching" + ], + "allOf": [ + { + "$ref": "#/definitions/AcsRouterJobEventData" + } + ] + }, + "AcsRouterJobWorkerSelectorsExpiredEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterJobWorkerSelectorsExpired event", + "properties": { + "expiredRequestedWorkerSelectors": { + "type": "array", + "description": "Router Job Worker Selectors Expired Requested Worker Selectors", + "items": { + "$ref": "#/definitions/AcsRouterWorkerSelector" + }, + "x-ms-identifiers": [] + }, + "expiredAttachedWorkerSelectors": { + "type": "array", + "description": "Router Job Worker Selectors Expired Attached Worker Selectors", + "items": { + "$ref": "#/definitions/AcsRouterWorkerSelector" + }, + "x-ms-identifiers": [] + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterJobEventData" + } + ] + }, + "AcsRouterLabelOperator": { + "type": "string", + "description": "Router Job Worker Selector Label Operator", + "enum": [ + "Equal", + "NotEqual", + "Greater", + "Less", + "GreaterThanOrEqual", + "LessThanOrEqual" + ], + "x-ms-enum": { + "name": "AcsRouterLabelOperator", + "modelAsString": true, + "values": [ + { + "name": "Equal", + "value": "Equal", + "description": "Router Label Operator Equal" + }, + { + "name": "NotEqual", + "value": "NotEqual", + "description": "Router Label Operator Not Equal" + }, + { + "name": "Greater", + "value": "Greater", + "description": "Router Label Operator Greater" + }, + { + "name": "Less", + "value": "Less", + "description": "Router Label Operator Less" + }, + { + "name": "GreaterThanOrEqual", + "value": "GreaterThanOrEqual", + "description": "Router Label Operator Greater than or equal" + }, + { + "name": "LessThanOrEqual", + "value": "LessThanOrEqual", + "description": "Router Label Operator Less than or equal" + } + ] + } + }, + "AcsRouterQueueDetails": { + "type": "object", + "description": "Router Queue Details", + "properties": { + "id": { + "type": "string", + "description": "Router Queue Id" + }, + "name": { + "type": "string", + "description": "Router Queue Name" + }, + "labels": { + "type": "object", + "description": "Router Queue Labels", + "additionalProperties": { + "type": "string" + } + } + } + }, + "AcsRouterWorkerDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerDeleted event", + "allOf": [ + { + "$ref": "#/definitions/AcsRouterWorkerEventData" + } + ] + }, + "AcsRouterWorkerDeregisteredEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerDeregistered event", + "properties": { + "workerId": { + "type": "string", + "description": "Router Worker Deregistered Worker Id" + } + } + }, + "AcsRouterWorkerEventData": { + "type": "object", + "description": "Schema of common properties of all Router Worker events", + "properties": { + "workerId": { + "type": "string", + "description": "Router Worker events Worker Id" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterEventData" + } + ] + }, + "AcsRouterWorkerOfferAcceptedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerOfferAccepted event", + "properties": { + "queueId": { + "type": "string", + "description": "Router Worker Offer Accepted Queue Id" + }, + "offerId": { + "type": "string", + "description": "Router Worker Offer Accepted Offer Id" + }, + "assignmentId": { + "type": "string", + "description": "Router Worker Offer Accepted Assignment Id" + }, + "jobPriority": { + "type": "integer", + "format": "int32", + "description": "Router Worker Offer Accepted Job Priority" + }, + "workerLabels": { + "type": "object", + "description": "Router Worker Offer Accepted Worker Labels", + "additionalProperties": { + "type": "string" + } + }, + "workerTags": { + "type": "object", + "description": "Router Worker Offer Accepted Worker Tags", + "additionalProperties": { + "type": "string" + } + }, + "jobLabels": { + "type": "object", + "description": "Router Worker Offer Accepted Job Labels", + "additionalProperties": { + "type": "string" + } + }, + "jobTags": { + "type": "object", + "description": "Router Worker Offer Accepted Job Tags", + "additionalProperties": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterWorkerEventData" + } + ] + }, + "AcsRouterWorkerOfferDeclinedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerOfferDeclined event", + "properties": { + "queueId": { + "type": "string", + "description": "Router Worker Offer Declined Queue Id" + }, + "offerId": { + "type": "string", + "description": "Router Worker Offer Declined Offer Id" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterWorkerEventData" + } + ] + }, + "AcsRouterWorkerOfferExpiredEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerOfferExpired event", + "properties": { + "queueId": { + "type": "string", + "description": "Router Worker Offer Expired Queue Id" + }, + "offerId": { + "type": "string", + "description": "Router Worker Offer Expired Offer Id" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterWorkerEventData" + } + ] + }, + "AcsRouterWorkerOfferIssuedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerOfferIssued event", + "properties": { + "queueId": { + "type": "string", + "description": "Router Worker Offer Issued Queue Id" + }, + "offerId": { + "type": "string", + "description": "Router Worker Offer Issued Offer Id" + }, + "jobPriority": { + "type": "integer", + "format": "int32", + "description": "Router Worker Offer Issued Job Priority" + }, + "workerLabels": { + "type": "object", + "description": "Router Worker Offer Issued Worker Labels", + "additionalProperties": { + "type": "string" + } + }, + "offeredOn": { + "type": "string", + "format": "date-time", + "description": "Router Worker Offer Issued Time in UTC" + }, + "expiresOn": { + "type": "string", + "format": "date-time", + "description": "Router Worker Offer Issued Expiration Time in UTC" + }, + "workerTags": { + "type": "object", + "description": "Router Worker Offer Issued Worker Tags", + "additionalProperties": { + "type": "string" + } + }, + "jobLabels": { + "type": "object", + "description": "Router Worker Offer Issued Job Labels", + "additionalProperties": { + "type": "string" + } + }, + "jobTags": { + "type": "object", + "description": "Router Worker Offer Issued Job Tags", + "additionalProperties": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterWorkerEventData" + } + ] + }, + "AcsRouterWorkerOfferRevokedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerOfferRevoked event", + "properties": { + "queueId": { + "type": "string", + "description": "Router Worker Offer Revoked Queue Id" + }, + "offerId": { + "type": "string", + "description": "Router Worker Offer Revoked Offer Id" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsRouterWorkerEventData" + } + ] + }, + "AcsRouterWorkerRegisteredEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.RouterWorkerRegistered event", + "properties": { + "workerId": { + "type": "string", + "description": "Router Worker Registered Worker Id" + }, + "queueAssignments": { + "type": "array", + "description": "Router Worker Registered Queue Info", + "items": { + "$ref": "#/definitions/AcsRouterQueueDetails" + } + }, + "channelConfigurations": { + "type": "array", + "description": "Router Worker Registered Channel Configuration", + "items": { + "$ref": "#/definitions/AcsRouterChannelConfiguration" + }, + "x-ms-identifiers": [] + }, + "totalCapacity": { + "type": "integer", + "format": "int32", + "description": "Router Worker Register Total Capacity" + }, + "labels": { + "type": "object", + "description": "Router Worker Registered Labels", + "additionalProperties": { + "type": "string" + } + }, + "tags": { + "type": "object", + "description": "Router Worker Registered Tags", + "additionalProperties": { + "type": "string" + } + } + } + }, + "AcsRouterWorkerSelector": { + "type": "object", + "description": "Router Job Worker Selector", + "properties": { + "key": { + "type": "string", + "description": "Router Job Worker Selector Key" + }, + "operator": { + "$ref": "#/definitions/AcsRouterLabelOperator", + "description": "Router Job Worker Selector Label Operator" + }, + "labelValue": { + "description": "Router Job Worker Selector Value" + }, + "ttlSeconds": { + "type": "string", + "format": "duration", + "description": "Router Job Worker Selector Time to Live in Seconds" + }, + "selectorState": { + "$ref": "#/definitions/AcsRouterWorkerSelectorState", + "description": "Router Job Worker Selector State" + }, + "expirationTime": { + "type": "string", + "format": "date-time", + "description": "Router Job Worker Selector Expiration Time" + } + } + }, + "AcsRouterWorkerSelectorState": { + "type": "string", + "description": "Router Worker Selector State", + "enum": [ + "active", + "expired" + ], + "x-ms-enum": { + "name": "AcsRouterWorkerSelectorState", + "modelAsString": true, + "values": [ + { + "name": "Active", + "value": "active", + "description": "Router Worker Selector State Active" + }, + { + "name": "Expired", + "value": "expired", + "description": "Router Worker Selector State Expired" + } + ] + } + }, + "AcsSmsDeliveryAttemptProperties": { + "type": "object", + "description": "Schema for details of a delivery attempt", + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "TimeStamp when delivery was attempted" + }, + "segmentsSucceeded": { + "type": "integer", + "format": "int32", + "description": "Number of segments that were successfully delivered" + }, + "segmentsFailed": { + "type": "integer", + "format": "int32", + "description": "Number of segments whose delivery failed" + } + } + }, + "AcsSmsDeliveryReportReceivedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.SMSDeliveryReportReceived event.", + "properties": { + "deliveryStatus": { + "type": "string", + "description": "Status of Delivery" + }, + "deliveryStatusDetails": { + "type": "string", + "description": "Details about Delivery Status" + }, + "deliveryAttempts": { + "type": "array", + "description": "List of details of delivery attempts made", + "items": { + "$ref": "#/definitions/AcsSmsDeliveryAttemptProperties" + }, + "x-ms-identifiers": [] + }, + "receivedTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time at which the SMS delivery report was received" + }, + "tag": { + "type": "string", + "description": "Customer Content" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsSmsEventBaseProperties" + } + ] + }, + "AcsSmsEventBaseProperties": { + "type": "object", + "description": "Schema of common properties of all SMS events", + "properties": { + "messageId": { + "type": "string", + "description": "The identity of the SMS message" + }, + "from": { + "type": "string", + "description": "The identity of SMS message sender" + }, + "to": { + "type": "string", + "description": "The identity of SMS message receiver" + } + } + }, + "AcsSmsReceivedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Communication.SMSReceived event.", + "properties": { + "message": { + "type": "string", + "description": "The SMS content" + }, + "receivedTimestamp": { + "type": "string", + "format": "date-time", + "description": "The time at which the SMS was received" + } + }, + "allOf": [ + { + "$ref": "#/definitions/AcsSmsEventBaseProperties" + } + ] + }, + "AcsUserDisconnectedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Communication.UserDisconnected event.", + "properties": { + "userCommunicationIdentifier": { + "$ref": "#/definitions/CommunicationIdentifierModel", + "description": "The communication identifier of the user who was disconnected" + } + } + }, + "AcsUserEngagement": { + "type": "string", + "description": "The type of engagement user have with email.", + "enum": [ + "view", + "click" + ], + "x-ms-enum": { + "name": "AcsUserEngagement", + "modelAsString": true, + "values": [ + { + "name": "view", + "value": "view", + "description": "View" + }, + { + "name": "click", + "value": "click", + "description": "Click" + } + ] + } + }, + "ApiManagementApiCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.APICreated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "ApiManagementApiDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.APIDeleted event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "ApiManagementApiReleaseCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.APIReleaseCreated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "ApiManagementApiReleaseDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.APIReleaseDeleted event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "ApiManagementApiReleaseUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.APIReleaseUpdated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "ApiManagementApiUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.APIUpdated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "ApiManagementGatewayApiAddedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayAPIAdded event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways//apis/`" + } + } + }, + "ApiManagementGatewayApiRemovedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayAPIRemoved event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways//apis/`" + } + } + }, + "ApiManagementGatewayCertificateAuthorityCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayCertificateAuthorityCreated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways//certificateAuthorities/`" + } + } + }, + "ApiManagementGatewayCertificateAuthorityDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayCertificateAuthorityDeleted event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways//certificateAuthorities/`" + } + } + }, + "ApiManagementGatewayCertificateAuthorityUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayCertificateAuthorityUpdated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways//certificateAuthorities/`" + } + } + }, + "ApiManagementGatewayCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayCreated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways/`" + } + } + }, + "ApiManagementGatewayDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayDeleted event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways/`" + } + } + }, + "ApiManagementGatewayHostnameConfigurationCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayHostnameConfigurationCreated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways//hostnameConfigurations/`" + } + } + }, + "ApiManagementGatewayHostnameConfigurationDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayHostnameConfigurationDeleted event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways//hostnameConfigurations/`" + } + } + }, + "ApiManagementGatewayHostnameConfigurationUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayHostnameConfigurationUpdated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways//hostnameConfigurations/`" + } + } + }, + "ApiManagementGatewayUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.GatewayUpdated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service//gateways/`" + } + } + }, + "ApiManagementProductCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.ProductCreated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "ApiManagementProductDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.ProductDeleted event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "ApiManagementProductUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.ProductUpdated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "ApiManagementSubscriptionCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.SubscriptionCreated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "ApiManagementSubscriptionDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.SubscriptionDeleted event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "ApiManagementSubscriptionUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.SubscriptionUpdated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "ApiManagementUserCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.UserCreated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "ApiManagementUserDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.UserDeleted event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "ApiManagementUserUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ApiManagement.UserUpdated event.", + "properties": { + "resourceUri": { + "type": "string", + "description": "The fully qualified ID of the resource that the compliance state change is for, including the resource name and resource type. Uses the format, `/subscriptions//resourceGroups//Microsoft.ApiManagement/service///`" + } + } + }, + "AppAction": { + "type": "string", + "description": "Type of action of the operation", + "enum": [ + "Restarted", + "Stopped", + "ChangedAppSettings", + "Started", + "Completed", + "Failed" + ], + "x-ms-enum": { + "name": "AppAction", + "modelAsString": true, + "values": [ + { + "name": "Restarted", + "value": "Restarted", + "description": "Web app was restarted." + }, + { + "name": "Stopped", + "value": "Stopped", + "description": "Web app was stopped." + }, + { + "name": "ChangedAppSettings", + "value": "ChangedAppSettings", + "description": "There was an operation to change app setting on the web app." + }, + { + "name": "Started", + "value": "Started", + "description": "The job has started." + }, + { + "name": "Completed", + "value": "Completed", + "description": "The job has completed." + }, + { + "name": "Failed", + "value": "Failed", + "description": "The job has failed to complete." + } + ] + } + }, + "AppConfigurationKeyValueDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AppConfiguration.KeyValueDeleted event.", + "properties": { + "key": { + "type": "string", + "description": "The key used to identify the key-value that was deleted." + }, + "label": { + "type": "string", + "description": "The label, if any, used to identify the key-value that was deleted." + }, + "etag": { + "type": "string", + "description": "The etag representing the key-value that was deleted." + }, + "syncToken": { + "type": "string", + "description": "The sync token representing the server state after the event." + } + } + }, + "AppConfigurationKeyValueModifiedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AppConfiguration.KeyValueModified event.", + "properties": { + "key": { + "type": "string", + "description": "The key used to identify the key-value that was modified." + }, + "label": { + "type": "string", + "description": "The label, if any, used to identify the key-value that was modified." + }, + "etag": { + "type": "string", + "description": "The etag representing the new state of the key-value." + }, + "syncToken": { + "type": "string", + "description": "The sync token representing the server state after the event." + } + } + }, + "AppConfigurationSnapshotCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AppConfiguration.SnapshotCreated event.", + "allOf": [ + { + "$ref": "#/definitions/AppConfigurationSnapshotEventData" + } + ] + }, + "AppConfigurationSnapshotEventData": { + "type": "object", + "description": "Schema of common properties of snapshot events", + "properties": { + "name": { + "type": "string", + "description": "The name of the snapshot." + }, + "etag": { + "type": "string", + "description": "The etag representing the new state of the snapshot." + }, + "syncToken": { + "type": "string", + "description": "The sync token representing the server state after the event." + } + } + }, + "AppConfigurationSnapshotModifiedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AppConfiguration.SnapshotModified event.", + "allOf": [ + { + "$ref": "#/definitions/AppConfigurationSnapshotEventData" + } + ] + }, + "AppEventTypeDetail": { + "type": "object", + "description": "Detail of action on the app.", + "properties": { + "action": { + "$ref": "#/definitions/AppAction", + "description": "Type of action of the operation." + } + } + }, + "AppServicePlanAction": { + "type": "string", + "description": "Type of action on the app service plan.", + "enum": [ + "Updated" + ], + "x-ms-enum": { + "name": "AppServicePlanAction", + "modelAsString": true, + "values": [ + { + "name": "Updated", + "value": "Updated", + "description": "App Service plan is being updated." + } + ] + } + }, + "AppServicePlanEventTypeDetail": { + "type": "object", + "description": "Detail of action on the app service plan.", + "properties": { + "stampKind": { + "$ref": "#/definitions/StampKind", + "description": "Kind of environment where app service plan is." + }, + "action": { + "$ref": "#/definitions/AppServicePlanAction", + "description": "Type of action on the app service plan." + }, + "status": { + "$ref": "#/definitions/AsyncStatus", + "description": "Asynchronous operation status of the operation on the app service plan." + } + } + }, + "AsyncStatus": { + "type": "string", + "description": "Asynchronous operation status of the operation on the app service plan.", + "enum": [ + "Started", + "Completed", + "Failed" + ], + "x-ms-enum": { + "name": "AsyncStatus", + "modelAsString": true, + "values": [ + { + "name": "Started", + "value": "Started", + "description": "Async operation has started." + }, + { + "name": "Completed", + "value": "Completed", + "description": "Async operation has completed." + }, + { + "name": "Failed", + "value": "Failed", + "description": "Async operation failed to complete." + } + ] + } + }, + "AvsClusterCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AVS.ClusterCreated event.", + "allOf": [ + { + "$ref": "#/definitions/AvsClusterEventData" + } + ] + }, + "AvsClusterDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AVS.ClusterDeleted event.", + "allOf": [ + { + "$ref": "#/definitions/AvsClusterEventData" + } + ] + }, + "AvsClusterEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for Microsoft.AVS/clusters events.", + "properties": { + "operationId": { + "type": "string", + "description": "Id of the operation that caused this event." + }, + "addedHostNames": { + "type": "array", + "description": "Hosts added to the cluster in this event, if any.", + "items": { + "type": "string" + } + }, + "removedHostNames": { + "type": "array", + "description": "Hosts removed from the cluster in this event, if any.", + "items": { + "type": "string" + } + }, + "inMaintenanceHostNames": { + "type": "array", + "description": "Hosts in Maintenance mode in the cluster, if any.", + "items": { + "type": "string" + } + } + } + }, + "AvsClusterFailedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AVS.ClusterFailed event.", + "properties": { + "failureMessage": { + "type": "string", + "description": "Failure reason of an event." + } + }, + "allOf": [ + { + "$ref": "#/definitions/AvsClusterEventData" + } + ] + }, + "AvsClusterUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AVS.ClusterUpdated event.", + "allOf": [ + { + "$ref": "#/definitions/AvsClusterEventData" + } + ] + }, + "AvsClusterUpdatingEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AVS.ClusterUpdating event.", + "allOf": [ + { + "$ref": "#/definitions/AvsClusterEventData" + } + ] + }, + "AvsPrivateCloudEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for Microsoft.AVS/privateClouds events.", + "properties": { + "operationId": { + "type": "string", + "description": "Id of the operation that caused this event." + } + } + }, + "AvsPrivateCloudFailedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AVS.PrivateCloudFailed event.", + "properties": { + "failureMessage": { + "type": "string", + "description": "Failure reason of an event." + } + }, + "allOf": [ + { + "$ref": "#/definitions/AvsPrivateCloudEventData" + } + ] + }, + "AvsPrivateCloudUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AVS.PrivateCloudUpdated event.", + "allOf": [ + { + "$ref": "#/definitions/AvsPrivateCloudEventData" + } + ] + }, + "AvsPrivateCloudUpdatingEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AVS.PrivateCloudUpdating event.", + "allOf": [ + { + "$ref": "#/definitions/AvsPrivateCloudEventData" + } + ] + }, + "AvsScriptExecutionCancelledEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AVS.ScriptExecutionCancelled event.", + "allOf": [ + { + "$ref": "#/definitions/AvsScriptExecutionEventData" + } + ] + }, + "AvsScriptExecutionEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for Microsoft.AVS/scriptExecutions events.", + "properties": { + "operationId": { + "type": "string", + "description": "Id of the operation that caused this event." + }, + "cmdletId": { + "type": "string", + "description": "Cmdlet referenced in the execution that caused this event." + }, + "output": { + "type": "array", + "description": "Stdout outputs from the execution, if any.", + "items": { + "type": "string" + } + } + } + }, + "AvsScriptExecutionFailedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AVS.ScriptExecutionFailed event.", + "properties": { + "failureMessage": { + "type": "string", + "description": "Failure reason of an event." + } + }, + "allOf": [ + { + "$ref": "#/definitions/AvsScriptExecutionEventData" + } + ] + }, + "AvsScriptExecutionFinishedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.AVS.ScriptExecutionFinished event.", + "properties": { + "namedOutputs": { + "type": "object", + "description": "Named outputs of completed execution, if any.", + "additionalProperties": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/AvsScriptExecutionEventData" + } + ] + }, + "CommunicationCloudEnvironmentModel": { + "type": "string", + "description": "Communication cloud environment model.", + "enum": [ + "public", + "dod", + "gcch" + ], + "x-ms-enum": { + "name": "CommunicationCloudEnvironmentModel", + "modelAsString": true, + "values": [ + { + "name": "public", + "value": "public", + "description": "Public" + }, + { + "name": "dod", + "value": "dod", + "description": "Dod" + }, + { + "name": "gcch", + "value": "gcch", + "description": "Gcch" + } + ] + } + }, + "CommunicationIdentifierModel": { + "type": "object", + "description": "Identifies a participant in Azure Communication services. A participant is, for example, a phone number or an Azure communication user. This model must be interpreted as a union: Apart from rawId, at most one further property may be set.", + "properties": { + "rawId": { + "type": "string", + "description": "Raw Id of the identifier. Optional in requests, required in responses." + }, + "communicationUser": { + "$ref": "#/definitions/CommunicationUserIdentifierModel", + "description": "The communication user." + }, + "phoneNumber": { + "$ref": "#/definitions/PhoneNumberIdentifierModel", + "description": "The phone number." + }, + "microsoftTeamsUser": { + "$ref": "#/definitions/MicrosoftTeamsUserIdentifierModel", + "description": "The Microsoft Teams user." + } + } + }, + "CommunicationUserIdentifierModel": { + "type": "object", + "description": "A user that got created with an Azure Communication Services resource.", + "properties": { + "id": { + "type": "string", + "description": "The Id of the communication user." + } + }, + "required": [ + "id" + ] + }, + "ContainerRegistryArtifactEventData": { + "type": "object", + "description": "The content of the event request message.", + "properties": { + "id": { + "type": "string", + "description": "The event ID." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The time at which the event occurred." + }, + "action": { + "type": "string", + "description": "The action that encompasses the provided event." + }, + "location": { + "type": "string", + "description": "The location of the event." + }, + "target": { + "$ref": "#/definitions/ContainerRegistryArtifactEventTarget", + "description": "The target of the event." + }, + "connectedRegistry": { + "$ref": "#/definitions/ContainerRegistryEventConnectedRegistry", + "description": "The connected registry information if the event is generated by a connected registry." + } + } + }, + "ContainerRegistryArtifactEventTarget": { + "type": "object", + "description": "The target of the event.", + "properties": { + "mediaType": { + "type": "string", + "description": "The MIME type of the artifact." + }, + "size": { + "type": "integer", + "format": "int64", + "description": "The size in bytes of the artifact." + }, + "digest": { + "type": "string", + "description": "The digest of the artifact." + }, + "repository": { + "type": "string", + "description": "The repository name of the artifact." + }, + "tag": { + "type": "string", + "description": "The tag of the artifact." + }, + "name": { + "type": "string", + "description": "The name of the artifact." + }, + "version": { + "type": "string", + "description": "The version of the artifact." + } + } + }, + "ContainerRegistryChartDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ContainerRegistry.ChartDeleted event.", + "allOf": [ + { + "$ref": "#/definitions/ContainerRegistryArtifactEventData" + } + ] + }, + "ContainerRegistryChartPushedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ContainerRegistry.ChartPushed event.", + "allOf": [ + { + "$ref": "#/definitions/ContainerRegistryArtifactEventData" + } + ] + }, + "ContainerRegistryEventActor": { + "type": "object", + "description": "The agent that initiated the event. For most situations, this could be from the authorization context of the request.", + "properties": { + "name": { + "type": "string", + "description": "The subject or username associated with the request context that generated the event." + } + } + }, + "ContainerRegistryEventConnectedRegistry": { + "type": "object", + "description": "The connected registry information if the event is generated by a connected registry.", + "properties": { + "name": { + "type": "string", + "description": "The name of the connected registry that generated this event." + } + } + }, + "ContainerRegistryEventData": { + "type": "object", + "description": "The content of the event request message.", + "properties": { + "id": { + "type": "string", + "description": "The event ID." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The time at which the event occurred." + }, + "action": { + "type": "string", + "description": "The action that encompasses the provided event." + }, + "location": { + "type": "string", + "description": "The location of the event." + }, + "target": { + "$ref": "#/definitions/ContainerRegistryEventTarget", + "description": "The target of the event." + }, + "request": { + "$ref": "#/definitions/ContainerRegistryEventRequest", + "description": "The request that generated the event." + }, + "actor": { + "$ref": "#/definitions/ContainerRegistryEventActor", + "description": "The agent that initiated the event. For most situations, this could be from the authorization context of the request." + }, + "source": { + "$ref": "#/definitions/ContainerRegistryEventSource", + "description": "The registry node that generated the event. Put differently, while the actor initiates the event, the source generates it." + }, + "connectedRegistry": { + "$ref": "#/definitions/ContainerRegistryEventConnectedRegistry", + "description": "The connected registry information if the event is generated by a connected registry." + } + } + }, + "ContainerRegistryEventRequest": { + "type": "object", + "description": "The request that generated the event.", + "properties": { + "id": { + "type": "string", + "description": "The ID of the request that initiated the event." + }, + "addr": { + "type": "string", + "description": "The IP or hostname and possibly port of the client connection that initiated the event. This is the RemoteAddr from the standard http request." + }, + "host": { + "type": "string", + "description": "The externally accessible hostname of the registry instance, as specified by the http host header on incoming requests." + }, + "method": { + "type": "string", + "description": "The request method that generated the event." + }, + "useragent": { + "type": "string", + "description": "The user agent header of the request." + } + } + }, + "ContainerRegistryEventSource": { + "type": "object", + "description": "The registry node that generated the event. Put differently, while the actor initiates the event, the source generates it.", + "properties": { + "addr": { + "type": "string", + "description": "The IP or hostname and the port of the registry node that generated the event. Generally, this will be resolved by os.Hostname() along with the running port." + }, + "instanceID": { + "type": "string", + "description": "The running instance of an application. Changes after each restart." + } + } + }, + "ContainerRegistryEventTarget": { + "type": "object", + "description": "The target of the event.", + "properties": { + "mediaType": { + "type": "string", + "description": "The MIME type of the referenced object." + }, + "size": { + "type": "integer", + "format": "int64", + "description": "The number of bytes of the content. Same as Length field." + }, + "digest": { + "type": "string", + "description": "The digest of the content, as defined by the Registry V2 HTTP API Specification." + }, + "length": { + "type": "integer", + "format": "int64", + "description": "The number of bytes of the content. Same as Size field." + }, + "repository": { + "type": "string", + "description": "The repository name." + }, + "url": { + "type": "string", + "description": "The direct URL to the content." + }, + "tag": { + "type": "string", + "description": "The tag name." + } + } + }, + "ContainerRegistryImageDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ContainerRegistry.ImageDeleted event.", + "allOf": [ + { + "$ref": "#/definitions/ContainerRegistryEventData" + } + ] + }, + "ContainerRegistryImagePushedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ContainerRegistry.ImagePushed event.", + "allOf": [ + { + "$ref": "#/definitions/ContainerRegistryEventData" + } + ] + }, + "ContainerServiceClusterSupportEndedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ContainerService.ClusterSupportEnded event", + "allOf": [ + { + "$ref": "#/definitions/ContainerServiceClusterSupportEventData" + } + ] + }, + "ContainerServiceClusterSupportEndingEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ContainerService.ClusterSupportEnding event", + "allOf": [ + { + "$ref": "#/definitions/ContainerServiceClusterSupportEventData" + } + ] + }, + "ContainerServiceClusterSupportEventData": { + "type": "object", + "description": "Schema of common properties of cluster support events", + "properties": { + "kubernetesVersion": { + "type": "string", + "description": "The Kubernetes version of the ManagedCluster resource" + } + } + }, + "ContainerServiceNewKubernetesVersionAvailableEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ContainerService.NewKubernetesVersionAvailable event", + "properties": { + "latestSupportedKubernetesVersion": { + "type": "string", + "description": "The highest PATCH Kubernetes version for the highest MINOR version supported by ManagedCluster resource" + }, + "latestStableKubernetesVersion": { + "type": "string", + "description": "The highest PATCH Kubernetes version for the MINOR version considered stable for the ManagedCluster resource" + }, + "lowestMinorKubernetesVersion": { + "type": "string", + "description": "The highest PATCH Kubernetes version for the lowest applicable MINOR version available for the ManagedCluster resource" + }, + "latestPreviewKubernetesVersion": { + "type": "string", + "description": "The highest PATCH Kubernetes version considered preview for the ManagedCluster resource. There might not be any version in preview at the time of publishing the event" + } + } + }, + "ContainerServiceNodePoolRollingEventData": { + "type": "object", + "description": "Schema of common properties of node pool rolling events", + "properties": { + "nodePoolName": { + "type": "string", + "description": "The name of the node pool in the ManagedCluster resource" + } + } + }, + "ContainerServiceNodePoolRollingFailedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ContainerService.NodePoolRollingFailed event", + "allOf": [ + { + "$ref": "#/definitions/ContainerServiceNodePoolRollingEventData" + } + ] + }, + "ContainerServiceNodePoolRollingStartedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ContainerService.NodePoolRollingStarted event", + "allOf": [ + { + "$ref": "#/definitions/ContainerServiceNodePoolRollingEventData" + } + ] + }, + "ContainerServiceNodePoolRollingSucceededEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ContainerService.NodePoolRollingSucceeded event", + "allOf": [ + { + "$ref": "#/definitions/ContainerServiceNodePoolRollingEventData" + } + ] + }, + "DataBoxCopyCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.DataBox.CopyCompleted event.", + "properties": { + "serialNumber": { + "type": "string", + "description": "Serial Number of the device associated with the event. The list is comma separated if more than one serial number is associated." + }, + "stageName": { + "$ref": "#/definitions/DataBoxStageName", + "description": "Name of the current Stage" + }, + "stageTime": { + "type": "string", + "format": "date-time", + "description": "The time at which the stage happened." + } + } + }, + "DataBoxCopyStartedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.DataBox.CopyStarted event.", + "properties": { + "serialNumber": { + "type": "string", + "description": "Serial Number of the device associated with the event. The list is comma separated if more than one serial number is associated." + }, + "stageName": { + "$ref": "#/definitions/DataBoxStageName", + "description": "Name of the current Stage" + }, + "stageTime": { + "type": "string", + "format": "date-time", + "description": "The time at which the stage happened." + } + } + }, + "DataBoxOrderCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.DataBox.OrderCompleted event.", + "properties": { + "serialNumber": { + "type": "string", + "description": "Serial Number of the device associated with the event. The list is comma separated if more than one serial number is associated." + }, + "stageName": { + "$ref": "#/definitions/DataBoxStageName", + "description": "Name of the current Stage" + }, + "stageTime": { + "type": "string", + "format": "date-time", + "description": "The time at which the stage happened." + } + } + }, + "DataBoxStageName": { + "type": "string", + "description": "Schema of DataBox Stage Name enumeration.", + "enum": [ + "CopyStarted", + "CopyCompleted", + "OrderCompleted" + ], + "x-ms-enum": { + "name": "DataBoxStageName", + "modelAsString": true, + "values": [ + { + "name": "CopyStarted", + "value": "CopyStarted", + "description": "Copy has started" + }, + { + "name": "CopyCompleted", + "value": "CopyCompleted", + "description": "Copy has completed" + }, + { + "name": "OrderCompleted", + "value": "OrderCompleted", + "description": "Order has been completed" + } + ] + } + }, + "DeviceConnectionStateEventInfo": { + "type": "object", + "description": "Information about the device connection state event.", + "properties": { + "sequenceNumber": { + "type": "string", + "description": "Sequence number is string representation of a hexadecimal number. string compare can be used to identify the larger number because both in ASCII and HEX numbers come after alphabets. If you are converting the string to hex, then the number is a 256 bit number." + } + } + }, + "DeviceConnectionStateEventProperties": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a device connection state event (DeviceConnected, DeviceDisconnected).", + "properties": { + "deviceId": { + "type": "string", + "description": "The unique identifier of the device. This case-sensitive string can be up to 128 characters long, and supports ASCII 7-bit alphanumeric characters plus the following special characters: - : . + % _ # * ? ! ( ) , = `@` ; $ '." + }, + "moduleId": { + "type": "string", + "description": "The unique identifier of the module. This case-sensitive string can be up to 128 characters long, and supports ASCII 7-bit alphanumeric characters plus the following special characters: - : . + % _ # * ? ! ( ) , = `@` ; $ '." + }, + "hubName": { + "type": "string", + "description": "Name of the IoT Hub where the device was created or deleted." + }, + "deviceConnectionStateEventInfo": { + "$ref": "#/definitions/DeviceConnectionStateEventInfo", + "description": "Information about the device connection state event." + } + } + }, + "DeviceLifeCycleEventProperties": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a device life cycle event (DeviceCreated, DeviceDeleted).", + "properties": { + "deviceId": { + "type": "string", + "description": "The unique identifier of the device. This case-sensitive string can be up to 128 characters long, and supports ASCII 7-bit alphanumeric characters plus the following special characters: - : . + % _ # * ? ! ( ) , = `@` ; $ '." + }, + "hubName": { + "type": "string", + "description": "Name of the IoT Hub where the device was created or deleted." + }, + "twin": { + "$ref": "#/definitions/DeviceTwinInfo", + "description": "Information about the device twin, which is the cloud representation of application device metadata." + } + } + }, + "DeviceTelemetryEventProperties": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a device telemetry event (DeviceTelemetry).", + "properties": { + "body": { + "type": "object", + "description": "The content of the message from the device.", + "additionalProperties": {} + }, + "properties": { + "type": "object", + "description": "Application properties are user-defined strings that can be added to the message. These fields are optional.", + "additionalProperties": { + "type": "string" + } + }, + "systemProperties": { + "type": "object", + "description": "System properties help identify contents and source of the messages.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "DeviceTwinInfo": { + "type": "object", + "description": "Information about the device twin, which is the cloud representation of application device metadata.", + "properties": { + "authenticationType": { + "type": "string", + "description": "Authentication type used for this device: either SAS, SelfSigned, or CertificateAuthority." + }, + "cloudToDeviceMessageCount": { + "type": "number", + "format": "float", + "description": "Count of cloud to device messages sent to this device." + }, + "connectionState": { + "type": "string", + "description": "Whether the device is connected or disconnected." + }, + "deviceId": { + "type": "string", + "description": "The unique identifier of the device twin." + }, + "etag": { + "type": "string", + "description": "A piece of information that describes the content of the device twin. Each etag is guaranteed to be unique per device twin." + }, + "lastActivityTime": { + "type": "string", + "description": "The ISO8601 timestamp of the last activity." + }, + "properties": { + "$ref": "#/definitions/DeviceTwinInfoProperties", + "description": "Properties JSON element." + }, + "status": { + "type": "string", + "description": "Whether the device twin is enabled or disabled." + }, + "statusUpdateTime": { + "type": "string", + "description": "The ISO8601 timestamp of the last device twin status update." + }, + "version": { + "type": "number", + "format": "float", + "description": "An integer that is incremented by one each time the device twin is updated." + }, + "x509Thumbprint": { + "$ref": "#/definitions/DeviceTwinInfoX509Thumbprint", + "description": "The thumbprint is a unique value for the x509 certificate, commonly used to find a particular certificate in a certificate store. The thumbprint is dynamically generated using the SHA1 algorithm, and does not physically exist in the certificate." + } + } + }, + "DeviceTwinInfoProperties": { + "type": "object", + "description": "Properties JSON element.", + "properties": { + "desired": { + "$ref": "#/definitions/DeviceTwinProperties", + "description": "A portion of the properties that can be written only by the application back-end, and read by the device." + }, + "reported": { + "$ref": "#/definitions/DeviceTwinProperties", + "description": "A portion of the properties that can be written only by the device, and read by the application back-end." + } + } + }, + "DeviceTwinInfoX509Thumbprint": { + "type": "object", + "description": "The thumbprint is a unique value for the x509 certificate, commonly used to find a particular certificate in a certificate store. The thumbprint is dynamically generated using the SHA1 algorithm, and does not physically exist in the certificate.", + "properties": { + "primaryThumbprint": { + "type": "string", + "description": "Primary thumbprint for the x509 certificate." + }, + "secondaryThumbprint": { + "type": "string", + "description": "Secondary thumbprint for the x509 certificate." + } + } + }, + "DeviceTwinMetadata": { + "type": "object", + "description": "Metadata information for the properties JSON document.", + "properties": { + "lastUpdated": { + "type": "string", + "description": "The ISO8601 timestamp of the last time the properties were updated.", + "x-ms-client-name": "$lastUpdated" + } + } + }, + "DeviceTwinProperties": { + "type": "object", + "description": "A portion of the properties that can be written only by the application back-end, and read by the device.", + "properties": { + "metadata": { + "$ref": "#/definitions/DeviceTwinMetadata", + "description": "Metadata information for the properties JSON document.", + "x-ms-client-name": "$metadata" + }, + "version": { + "type": "number", + "format": "float", + "description": "Version of device twin properties.", + "x-ms-client-name": "$version" + } + } + }, + "EventGridMQTTClientCreatedOrUpdatedEventData": { + "type": "object", + "description": "Event data for Microsoft.EventGrid.SystemEvents.MQTTClientCreatedOrUpdated event.", + "properties": { + "state": { + "$ref": "#/definitions/EventGridMQTTClientState", + "description": "Configured state of the client. The value could be Enabled or Disabled" + }, + "createdOn": { + "type": "string", + "format": "date-time", + "description": "Time the client resource is created based on the provider's UTC time." + }, + "updatedOn": { + "type": "string", + "format": "date-time", + "description": "Time the client resource is last updated based on the provider's UTC time. If\nthe client resource was never updated, this value is identical to the value of\nthe 'createdOn' property." + }, + "attributes": { + "type": "object", + "description": "The key-value attributes that are assigned to the client resource.", + "additionalProperties": { + "type": "string" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/EventGridMQTTClientEventData" + } + ] + }, + "EventGridMQTTClientDeletedEventData": { + "type": "object", + "description": "Event data for Microsoft.EventGrid.SystemEvents.MQTTClientDeleted event.", + "allOf": [ + { + "$ref": "#/definitions/EventGridMQTTClientEventData" + } + ] + }, + "EventGridMQTTClientDisconnectionReason": { + "type": "string", + "description": "EventGrid MQTT Client Disconnection Reason", + "enum": [ + "ClientAuthenticationError", + "ClientAuthorizationError", + "ClientError", + "ClientInitiatedDisconnect", + "ConnectionLost", + "IpForbidden", + "QuotaExceeded", + "ServerError", + "ServerInitiatedDisconnect", + "SessionOverflow", + "SessionTakenOver" + ], + "x-ms-enum": { + "name": "EventGridMQTTClientDisconnectionReason", + "modelAsString": true, + "values": [ + { + "name": "ClientAuthenticationError", + "value": "ClientAuthenticationError", + "description": "The client got disconnected for any authentication reasons (for example, certificate expired, client got disabled, or client configuration changed)." + }, + { + "name": "ClientAuthorizationError", + "value": "ClientAuthorizationError", + "description": "The client got disconnected for any authorization reasons (for example, because of a change in the configuration of topic spaces, permission bindings, or client groups)." + }, + { + "name": "ClientError", + "value": "ClientError", + "description": "The client sent a bad request or used one of the unsupported features that resulted in a connection termination by the service." + }, + { + "name": "ClientInitiatedDisconnect", + "value": "ClientInitiatedDisconnect", + "description": "The client initiated a graceful disconnect through a DISCONNECT packet for MQTT or a close frame for MQTT over WebSocket." + }, + { + "name": "ConnectionLost", + "value": "ConnectionLost", + "description": "The client-server connection is lost. (EXCHANGE ONLINE PROTECTION)." + }, + { + "name": "IpForbidden", + "value": "IpForbidden", + "description": "The client's IP address is blocked by IP filter or Private links configuration." + }, + { + "name": "QuotaExceeded", + "value": "QuotaExceeded", + "description": "The client exceeded one or more of the throttling limits that resulted in a connection termination by the service." + }, + { + "name": "ServerError", + "value": "ServerError", + "description": "The connection got terminated due to an unexpected server error." + }, + { + "name": "ServerInitiatedDisconnect", + "value": "ServerInitiatedDisconnect", + "description": "The server initiates a graceful disconnect for any operational reason." + }, + { + "name": "SessionOverflow", + "value": "SessionOverflow", + "description": "The client's queue for unacknowledged QoS1 messages reached its limit, which resulted in a connection termination by the server." + }, + { + "name": "SessionTakenOver", + "value": "SessionTakenOver", + "description": "The client reconnected with the same authentication name, which resulted in the termination of the previous connection." + } + ] + } + }, + "EventGridMQTTClientEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for MQTT Client state changes.", + "properties": { + "clientAuthenticationName": { + "type": "string", + "description": "Unique identifier for the MQTT client that the client presents to the service\nfor authentication. This case-sensitive string can be up to 128 characters\nlong, and supports UTF-8 characters." + }, + "clientName": { + "type": "string", + "description": "Name of the client resource in the Event Grid namespace." + }, + "namespaceName": { + "type": "string", + "description": "Name of the Event Grid namespace where the MQTT client was created or updated." + } + } + }, + "EventGridMQTTClientSessionConnectedEventData": { + "type": "object", + "description": "Event data for Microsoft.EventGrid.SystemEvents.MQTTClientSessionConnected event.", + "properties": { + "clientSessionName": { + "type": "string", + "description": "Unique identifier for the MQTT client's session. This case-sensitive string can\nbe up to 128 characters long, and supports UTF-8 characters." + }, + "sequenceNumber": { + "type": "integer", + "format": "int64", + "description": "A number that helps indicate order of MQTT client session connected or\ndisconnected events. Latest event will have a sequence number that is higher\nthan the previous event." + } + }, + "allOf": [ + { + "$ref": "#/definitions/EventGridMQTTClientEventData" + } + ] + }, + "EventGridMQTTClientSessionDisconnectedEventData": { + "type": "object", + "description": "Event data for Microsoft.EventGrid.SystemEvents.MQTTClientSessionDisconnected event.", + "properties": { + "clientSessionName": { + "type": "string", + "description": "Unique identifier for the MQTT client's session. This case-sensitive string can\nbe up to 128 characters long, and supports UTF-8 characters." + }, + "sequenceNumber": { + "type": "integer", + "format": "int64", + "description": "A number that helps indicate order of MQTT client session connected or\ndisconnected events. Latest event will have a sequence number that is higher\nthan the previous event." + }, + "disconnectionReason": { + "$ref": "#/definitions/EventGridMQTTClientDisconnectionReason", + "description": "Reason for the disconnection of the MQTT client's session. The value could be\none of the values in the disconnection reasons table." + } + }, + "allOf": [ + { + "$ref": "#/definitions/EventGridMQTTClientEventData" + } + ] + }, + "EventGridMQTTClientState": { + "type": "string", + "description": "EventGrid MQTT Client State", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "EventGridMQTTClientState", + "modelAsString": true, + "values": [ + { + "name": "Enabled", + "value": "Enabled", + "description": "Enabled" + }, + { + "name": "Disabled", + "value": "Disabled", + "description": "Disabled" + } + ] + } + }, + "EventHubCaptureFileCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.EventHub.CaptureFileCreated event.", + "properties": { + "fileUrl": { + "type": "string", + "description": "The path to the capture file.", + "x-ms-client-name": "fileurl" + }, + "fileType": { + "type": "string", + "description": "The file type of the capture file." + }, + "partitionId": { + "type": "string", + "description": "The shard ID." + }, + "sizeInBytes": { + "type": "integer", + "format": "int32", + "description": "The file size." + }, + "eventCount": { + "type": "integer", + "format": "int32", + "description": "The number of events in the file." + }, + "firstSequenceNumber": { + "type": "integer", + "format": "int32", + "description": "The smallest sequence number from the queue." + }, + "lastSequenceNumber": { + "type": "integer", + "format": "int32", + "description": "The last sequence number from the queue." + }, + "firstEnqueueTime": { + "type": "string", + "format": "date-time", + "description": "The first time from the queue." + }, + "lastEnqueueTime": { + "type": "string", + "format": "date-time", + "description": "The last time from the queue." + } + } + }, + "HealthcareDicomImageCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.HealthcareApis.DicomImageCreated event.", + "properties": { + "partitionName": { + "type": "string", + "description": "Data partition name" + }, + "imageStudyInstanceUid": { + "type": "string", + "description": "Unique identifier for the Study" + }, + "imageSeriesInstanceUid": { + "type": "string", + "description": "Unique identifier for the Series" + }, + "imageSopInstanceUid": { + "type": "string", + "description": "Unique identifier for the DICOM Image" + }, + "serviceHostName": { + "type": "string", + "description": "Domain name of the DICOM account for this image." + }, + "sequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of the DICOM Service within Azure Health Data Services. It is unique for every image creation and deletion within the service." + } + } + }, + "HealthcareDicomImageDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.HealthcareApis.DicomImageDeleted event.", + "properties": { + "partitionName": { + "type": "string", + "description": "Data partition name" + }, + "imageStudyInstanceUid": { + "type": "string", + "description": "Unique identifier for the Study" + }, + "imageSeriesInstanceUid": { + "type": "string", + "description": "Unique identifier for the Series" + }, + "imageSopInstanceUid": { + "type": "string", + "description": "Unique identifier for the DICOM Image" + }, + "serviceHostName": { + "type": "string", + "description": "Host name of the DICOM account for this image." + }, + "sequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of the DICOM Service within Azure Health Data Services. It is unique for every image creation and deletion within the service." + } + } + }, + "HealthcareDicomImageUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.HealthcareApis.DicomImageUpdated event.", + "properties": { + "partitionName": { + "type": "string", + "description": "Data partition name" + }, + "imageStudyInstanceUid": { + "type": "string", + "description": "Unique identifier for the Study" + }, + "imageSeriesInstanceUid": { + "type": "string", + "description": "Unique identifier for the Series" + }, + "imageSopInstanceUid": { + "type": "string", + "description": "Unique identifier for the DICOM Image" + }, + "serviceHostName": { + "type": "string", + "description": "Domain name of the DICOM account for this image." + }, + "sequenceNumber": { + "type": "integer", + "format": "int64", + "description": "Sequence number of the DICOM Service within Azure Health Data Services. It is unique for every image creation, updation and deletion within the service." + } + } + }, + "HealthcareFhirResourceCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.HealthcareApis.FhirResourceCreated event.", + "properties": { + "resourceType": { + "$ref": "#/definitions/HealthcareFhirResourceType", + "description": "Type of HL7 FHIR resource.", + "x-ms-client-name": "FhirResourceType" + }, + "resourceFhirAccount": { + "type": "string", + "description": "Domain name of FHIR account for this resource.", + "x-ms-client-name": "FhirServiceHostName" + }, + "resourceFhirId": { + "type": "string", + "description": "Id of HL7 FHIR resource.", + "x-ms-client-name": "FhirResourceId" + }, + "resourceVersionId": { + "type": "integer", + "format": "int64", + "description": "VersionId of HL7 FHIR resource. It changes when the resource is created, updated, or deleted(soft-deletion).", + "x-ms-client-name": "FhirResourceVersionId" + } + } + }, + "HealthcareFhirResourceDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.HealthcareApis.FhirResourceDeleted event.", + "properties": { + "resourceType": { + "$ref": "#/definitions/HealthcareFhirResourceType", + "description": "Type of HL7 FHIR resource.", + "x-ms-client-name": "FhirResourceType" + }, + "resourceFhirAccount": { + "type": "string", + "description": "Domain name of FHIR account for this resource.", + "x-ms-client-name": "FhirServiceHostName" + }, + "resourceFhirId": { + "type": "string", + "description": "Id of HL7 FHIR resource.", + "x-ms-client-name": "FhirResourceId" + }, + "resourceVersionId": { + "type": "integer", + "format": "int64", + "description": "VersionId of HL7 FHIR resource. It changes when the resource is created, updated, or deleted(soft-deletion).", + "x-ms-client-name": "FhirResourceVersionId" + } + } + }, + "HealthcareFhirResourceType": { + "type": "string", + "description": "Schema of FHIR resource type enumeration.", + "enum": [ + "Account", + "ActivityDefinition", + "AdverseEvent", + "AllergyIntolerance", + "Appointment", + "AppointmentResponse", + "AuditEvent", + "Basic", + "Binary", + "BiologicallyDerivedProduct", + "BodySite", + "BodyStructure", + "Bundle", + "CapabilityStatement", + "CarePlan", + "CareTeam", + "CatalogEntry", + "ChargeItem", + "ChargeItemDefinition", + "Claim", + "ClaimResponse", + "ClinicalImpression", + "CodeSystem", + "Communication", + "CommunicationRequest", + "CompartmentDefinition", + "Composition", + "ConceptMap", + "Condition", + "Consent", + "Contract", + "Coverage", + "CoverageEligibilityRequest", + "CoverageEligibilityResponse", + "DataElement", + "DetectedIssue", + "Device", + "DeviceComponent", + "DeviceDefinition", + "DeviceMetric", + "DeviceRequest", + "DeviceUseStatement", + "DiagnosticReport", + "DocumentManifest", + "DocumentReference", + "DomainResource", + "EffectEvidenceSynthesis", + "EligibilityRequest", + "EligibilityResponse", + "Encounter", + "Endpoint", + "EnrollmentRequest", + "EnrollmentResponse", + "EpisodeOfCare", + "EventDefinition", + "Evidence", + "EvidenceVariable", + "ExampleScenario", + "ExpansionProfile", + "ExplanationOfBenefit", + "FamilyMemberHistory", + "Flag", + "Goal", + "GraphDefinition", + "Group", + "GuidanceResponse", + "HealthcareService", + "ImagingManifest", + "ImagingStudy", + "Immunization", + "ImmunizationEvaluation", + "ImmunizationRecommendation", + "ImplementationGuide", + "InsurancePlan", + "Invoice", + "Library", + "Linkage", + "List", + "Location", + "Measure", + "MeasureReport", + "Media", + "Medication", + "MedicationAdministration", + "MedicationDispense", + "MedicationKnowledge", + "MedicationRequest", + "MedicationStatement", + "MedicinalProduct", + "MedicinalProductAuthorization", + "MedicinalProductContraindication", + "MedicinalProductIndication", + "MedicinalProductIngredient", + "MedicinalProductInteraction", + "MedicinalProductManufactured", + "MedicinalProductPackaged", + "MedicinalProductPharmaceutical", + "MedicinalProductUndesirableEffect", + "MessageDefinition", + "MessageHeader", + "MolecularSequence", + "NamingSystem", + "NutritionOrder", + "Observation", + "ObservationDefinition", + "OperationDefinition", + "OperationOutcome", + "Organization", + "OrganizationAffiliation", + "Parameters", + "Patient", + "PaymentNotice", + "PaymentReconciliation", + "Person", + "PlanDefinition", + "Practitioner", + "PractitionerRole", + "Procedure", + "ProcedureRequest", + "ProcessRequest", + "ProcessResponse", + "Provenance", + "Questionnaire", + "QuestionnaireResponse", + "ReferralRequest", + "RelatedPerson", + "RequestGroup", + "ResearchDefinition", + "ResearchElementDefinition", + "ResearchStudy", + "ResearchSubject", + "Resource", + "RiskAssessment", + "RiskEvidenceSynthesis", + "Schedule", + "SearchParameter", + "Sequence", + "ServiceDefinition", + "ServiceRequest", + "Slot", + "Specimen", + "SpecimenDefinition", + "StructureDefinition", + "StructureMap", + "Subscription", + "Substance", + "SubstanceNucleicAcid", + "SubstancePolymer", + "SubstanceProtein", + "SubstanceReferenceInformation", + "SubstanceSourceMaterial", + "SubstanceSpecification", + "SupplyDelivery", + "SupplyRequest", + "Task", + "TerminologyCapabilities", + "TestReport", + "TestScript", + "ValueSet", + "VerificationResult", + "VisionPrescription" + ], + "x-ms-enum": { + "name": "HealthcareFhirResourceType", + "modelAsString": true, + "values": [ + { + "name": "Account", + "value": "Account", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "ActivityDefinition", + "value": "ActivityDefinition", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "AdverseEvent", + "value": "AdverseEvent", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "AllergyIntolerance", + "value": "AllergyIntolerance", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Appointment", + "value": "Appointment", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "AppointmentResponse", + "value": "AppointmentResponse", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "AuditEvent", + "value": "AuditEvent", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Basic", + "value": "Basic", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Binary", + "value": "Binary", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "BiologicallyDerivedProduct", + "value": "BiologicallyDerivedProduct", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "BodySite", + "value": "BodySite", + "description": "The FHIR resource type defined in STU3." + }, + { + "name": "BodyStructure", + "value": "BodyStructure", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "Bundle", + "value": "Bundle", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "CapabilityStatement", + "value": "CapabilityStatement", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "CarePlan", + "value": "CarePlan", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "CareTeam", + "value": "CareTeam", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "CatalogEntry", + "value": "CatalogEntry", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "ChargeItem", + "value": "ChargeItem", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "ChargeItemDefinition", + "value": "ChargeItemDefinition", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "Claim", + "value": "Claim", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "ClaimResponse", + "value": "ClaimResponse", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "ClinicalImpression", + "value": "ClinicalImpression", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "CodeSystem", + "value": "CodeSystem", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Communication", + "value": "Communication", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "CommunicationRequest", + "value": "CommunicationRequest", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "CompartmentDefinition", + "value": "CompartmentDefinition", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Composition", + "value": "Composition", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "ConceptMap", + "value": "ConceptMap", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Condition", + "value": "Condition", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Consent", + "value": "Consent", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Contract", + "value": "Contract", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Coverage", + "value": "Coverage", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "CoverageEligibilityRequest", + "value": "CoverageEligibilityRequest", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "CoverageEligibilityResponse", + "value": "CoverageEligibilityResponse", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "DataElement", + "value": "DataElement", + "description": "The FHIR resource type defined in STU3." + }, + { + "name": "DetectedIssue", + "value": "DetectedIssue", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Device", + "value": "Device", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "DeviceComponent", + "value": "DeviceComponent", + "description": "The FHIR resource type defined in STU3." + }, + { + "name": "DeviceDefinition", + "value": "DeviceDefinition", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "DeviceMetric", + "value": "DeviceMetric", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "DeviceRequest", + "value": "DeviceRequest", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "DeviceUseStatement", + "value": "DeviceUseStatement", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "DiagnosticReport", + "value": "DiagnosticReport", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "DocumentManifest", + "value": "DocumentManifest", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "DocumentReference", + "value": "DocumentReference", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "DomainResource", + "value": "DomainResource", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "EffectEvidenceSynthesis", + "value": "EffectEvidenceSynthesis", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "EligibilityRequest", + "value": "EligibilityRequest", + "description": "The FHIR resource type defined in STU3." + }, + { + "name": "EligibilityResponse", + "value": "EligibilityResponse", + "description": "The FHIR resource type defined in STU3." + }, + { + "name": "Encounter", + "value": "Encounter", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Endpoint", + "value": "Endpoint", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "EnrollmentRequest", + "value": "EnrollmentRequest", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "EnrollmentResponse", + "value": "EnrollmentResponse", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "EpisodeOfCare", + "value": "EpisodeOfCare", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "EventDefinition", + "value": "EventDefinition", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "Evidence", + "value": "Evidence", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "EvidenceVariable", + "value": "EvidenceVariable", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "ExampleScenario", + "value": "ExampleScenario", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "ExpansionProfile", + "value": "ExpansionProfile", + "description": "The FHIR resource type defined in STU3." + }, + { + "name": "ExplanationOfBenefit", + "value": "ExplanationOfBenefit", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "FamilyMemberHistory", + "value": "FamilyMemberHistory", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Flag", + "value": "Flag", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Goal", + "value": "Goal", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "GraphDefinition", + "value": "GraphDefinition", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Group", + "value": "Group", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "GuidanceResponse", + "value": "GuidanceResponse", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "HealthcareService", + "value": "HealthcareService", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "ImagingManifest", + "value": "ImagingManifest", + "description": "The FHIR resource type defined in STU3." + }, + { + "name": "ImagingStudy", + "value": "ImagingStudy", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Immunization", + "value": "Immunization", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "ImmunizationEvaluation", + "value": "ImmunizationEvaluation", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "ImmunizationRecommendation", + "value": "ImmunizationRecommendation", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "ImplementationGuide", + "value": "ImplementationGuide", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "InsurancePlan", + "value": "InsurancePlan", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "Invoice", + "value": "Invoice", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "Library", + "value": "Library", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Linkage", + "value": "Linkage", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "List", + "value": "List", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Location", + "value": "Location", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Measure", + "value": "Measure", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "MeasureReport", + "value": "MeasureReport", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Media", + "value": "Media", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Medication", + "value": "Medication", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "MedicationAdministration", + "value": "MedicationAdministration", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "MedicationDispense", + "value": "MedicationDispense", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "MedicationKnowledge", + "value": "MedicationKnowledge", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "MedicationRequest", + "value": "MedicationRequest", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "MedicationStatement", + "value": "MedicationStatement", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "MedicinalProduct", + "value": "MedicinalProduct", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "MedicinalProductAuthorization", + "value": "MedicinalProductAuthorization", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "MedicinalProductContraindication", + "value": "MedicinalProductContraindication", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "MedicinalProductIndication", + "value": "MedicinalProductIndication", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "MedicinalProductIngredient", + "value": "MedicinalProductIngredient", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "MedicinalProductInteraction", + "value": "MedicinalProductInteraction", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "MedicinalProductManufactured", + "value": "MedicinalProductManufactured", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "MedicinalProductPackaged", + "value": "MedicinalProductPackaged", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "MedicinalProductPharmaceutical", + "value": "MedicinalProductPharmaceutical", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "MedicinalProductUndesirableEffect", + "value": "MedicinalProductUndesirableEffect", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "MessageDefinition", + "value": "MessageDefinition", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "MessageHeader", + "value": "MessageHeader", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "MolecularSequence", + "value": "MolecularSequence", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "NamingSystem", + "value": "NamingSystem", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "NutritionOrder", + "value": "NutritionOrder", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Observation", + "value": "Observation", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "ObservationDefinition", + "value": "ObservationDefinition", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "OperationDefinition", + "value": "OperationDefinition", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "OperationOutcome", + "value": "OperationOutcome", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Organization", + "value": "Organization", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "OrganizationAffiliation", + "value": "OrganizationAffiliation", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "Parameters", + "value": "Parameters", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Patient", + "value": "Patient", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "PaymentNotice", + "value": "PaymentNotice", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "PaymentReconciliation", + "value": "PaymentReconciliation", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Person", + "value": "Person", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "PlanDefinition", + "value": "PlanDefinition", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Practitioner", + "value": "Practitioner", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "PractitionerRole", + "value": "PractitionerRole", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Procedure", + "value": "Procedure", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "ProcedureRequest", + "value": "ProcedureRequest", + "description": "The FHIR resource type defined in STU3." + }, + { + "name": "ProcessRequest", + "value": "ProcessRequest", + "description": "The FHIR resource type defined in STU3." + }, + { + "name": "ProcessResponse", + "value": "ProcessResponse", + "description": "The FHIR resource type defined in STU3." + }, + { + "name": "Provenance", + "value": "Provenance", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Questionnaire", + "value": "Questionnaire", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "QuestionnaireResponse", + "value": "QuestionnaireResponse", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "ReferralRequest", + "value": "ReferralRequest", + "description": "The FHIR resource type defined in STU3." + }, + { + "name": "RelatedPerson", + "value": "RelatedPerson", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "RequestGroup", + "value": "RequestGroup", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "ResearchDefinition", + "value": "ResearchDefinition", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "ResearchElementDefinition", + "value": "ResearchElementDefinition", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "ResearchStudy", + "value": "ResearchStudy", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "ResearchSubject", + "value": "ResearchSubject", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Resource", + "value": "Resource", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "RiskAssessment", + "value": "RiskAssessment", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "RiskEvidenceSynthesis", + "value": "RiskEvidenceSynthesis", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "Schedule", + "value": "Schedule", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "SearchParameter", + "value": "SearchParameter", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Sequence", + "value": "Sequence", + "description": "The FHIR resource type defined in STU3." + }, + { + "name": "ServiceDefinition", + "value": "ServiceDefinition", + "description": "The FHIR resource type defined in STU3." + }, + { + "name": "ServiceRequest", + "value": "ServiceRequest", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "Slot", + "value": "Slot", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Specimen", + "value": "Specimen", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "SpecimenDefinition", + "value": "SpecimenDefinition", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "StructureDefinition", + "value": "StructureDefinition", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "StructureMap", + "value": "StructureMap", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Subscription", + "value": "Subscription", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Substance", + "value": "Substance", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "SubstanceNucleicAcid", + "value": "SubstanceNucleicAcid", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "SubstancePolymer", + "value": "SubstancePolymer", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "SubstanceProtein", + "value": "SubstanceProtein", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "SubstanceReferenceInformation", + "value": "SubstanceReferenceInformation", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "SubstanceSourceMaterial", + "value": "SubstanceSourceMaterial", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "SubstanceSpecification", + "value": "SubstanceSpecification", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "SupplyDelivery", + "value": "SupplyDelivery", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "SupplyRequest", + "value": "SupplyRequest", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "Task", + "value": "Task", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "TerminologyCapabilities", + "value": "TerminologyCapabilities", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "TestReport", + "value": "TestReport", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "TestScript", + "value": "TestScript", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "ValueSet", + "value": "ValueSet", + "description": "The FHIR resource type defined in STU3 and R4." + }, + { + "name": "VerificationResult", + "value": "VerificationResult", + "description": "The FHIR resource type defined in R4." + }, + { + "name": "VisionPrescription", + "value": "VisionPrescription", + "description": "The FHIR resource type defined in STU3 and R4." + } + ] + } + }, + "HealthcareFhirResourceUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.HealthcareApis.FhirResourceUpdated event.", + "properties": { + "resourceType": { + "$ref": "#/definitions/HealthcareFhirResourceType", + "description": "Type of HL7 FHIR resource.", + "x-ms-client-name": "FhirResourceType" + }, + "resourceFhirAccount": { + "type": "string", + "description": "Domain name of FHIR account for this resource.", + "x-ms-client-name": "FhirServiceHostName" + }, + "resourceFhirId": { + "type": "string", + "description": "Id of HL7 FHIR resource.", + "x-ms-client-name": "FhirResourceId" + }, + "resourceVersionId": { + "type": "integer", + "format": "int64", + "description": "VersionId of HL7 FHIR resource. It changes when the resource is created, updated, or deleted(soft-deletion).", + "x-ms-client-name": "FhirResourceVersionId" + } + } + }, + "IotHubDeviceConnectedEventData": { + "type": "object", + "description": "Event data for Microsoft.Devices.DeviceConnected event.", + "allOf": [ + { + "$ref": "#/definitions/DeviceConnectionStateEventProperties" + } + ] + }, + "IotHubDeviceCreatedEventData": { + "type": "object", + "description": "Event data for Microsoft.Devices.DeviceCreated event.", + "allOf": [ + { + "$ref": "#/definitions/DeviceLifeCycleEventProperties" + } + ] + }, + "IotHubDeviceDeletedEventData": { + "type": "object", + "description": "Event data for Microsoft.Devices.DeviceDeleted event.", + "allOf": [ + { + "$ref": "#/definitions/DeviceLifeCycleEventProperties" + } + ] + }, + "IotHubDeviceDisconnectedEventData": { + "type": "object", + "description": "Event data for Microsoft.Devices.DeviceDisconnected event.", + "allOf": [ + { + "$ref": "#/definitions/DeviceConnectionStateEventProperties" + } + ] + }, + "IotHubDeviceTelemetryEventData": { + "type": "object", + "description": "Event data for Microsoft.Devices.DeviceTelemetry event.", + "allOf": [ + { + "$ref": "#/definitions/DeviceTelemetryEventProperties" + } + ] + }, + "KeyVaultCertificateExpiredEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.CertificateExpired event.", + "properties": { + "Id": { + "type": "string", + "description": "The id of the object that triggered this event." + }, + "VaultName": { + "type": "string", + "description": "Key vault name of the object that triggered this event." + }, + "ObjectType": { + "type": "string", + "description": "The type of the object that triggered this event" + }, + "ObjectName": { + "type": "string", + "description": "The name of the object that triggered this event" + }, + "Version": { + "type": "string", + "description": "The version of the object that triggered this event" + }, + "NBF": { + "type": "number", + "format": "float", + "description": "Not before date of the object that triggered this event" + }, + "EXP": { + "type": "number", + "format": "float", + "description": "The expiration date of the object that triggered this event" + } + } + }, + "KeyVaultCertificateNearExpiryEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.CertificateNearExpiry event.", + "properties": { + "Id": { + "type": "string", + "description": "The id of the object that triggered this event." + }, + "VaultName": { + "type": "string", + "description": "Key vault name of the object that triggered this event." + }, + "ObjectType": { + "type": "string", + "description": "The type of the object that triggered this event" + }, + "ObjectName": { + "type": "string", + "description": "The name of the object that triggered this event" + }, + "Version": { + "type": "string", + "description": "The version of the object that triggered this event" + }, + "NBF": { + "type": "number", + "format": "float", + "description": "Not before date of the object that triggered this event" + }, + "EXP": { + "type": "number", + "format": "float", + "description": "The expiration date of the object that triggered this event" + } + } + }, + "KeyVaultCertificateNewVersionCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.CertificateNewVersionCreated event.", + "properties": { + "Id": { + "type": "string", + "description": "The id of the object that triggered this event." + }, + "VaultName": { + "type": "string", + "description": "Key vault name of the object that triggered this event." + }, + "ObjectType": { + "type": "string", + "description": "The type of the object that triggered this event" + }, + "ObjectName": { + "type": "string", + "description": "The name of the object that triggered this event" + }, + "Version": { + "type": "string", + "description": "The version of the object that triggered this event" + }, + "NBF": { + "type": "number", + "format": "float", + "description": "Not before date of the object that triggered this event" + }, + "EXP": { + "type": "number", + "format": "float", + "description": "The expiration date of the object that triggered this event" + } + } + }, + "KeyVaultKeyExpiredEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.KeyExpired event.", + "properties": { + "Id": { + "type": "string", + "description": "The id of the object that triggered this event." + }, + "VaultName": { + "type": "string", + "description": "Key vault name of the object that triggered this event." + }, + "ObjectType": { + "type": "string", + "description": "The type of the object that triggered this event" + }, + "ObjectName": { + "type": "string", + "description": "The name of the object that triggered this event" + }, + "Version": { + "type": "string", + "description": "The version of the object that triggered this event" + }, + "NBF": { + "type": "number", + "format": "float", + "description": "Not before date of the object that triggered this event" + }, + "EXP": { + "type": "number", + "format": "float", + "description": "The expiration date of the object that triggered this event" + } + } + }, + "KeyVaultKeyNearExpiryEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.KeyNearExpiry event.", + "properties": { + "Id": { + "type": "string", + "description": "The id of the object that triggered this event." + }, + "VaultName": { + "type": "string", + "description": "Key vault name of the object that triggered this event." + }, + "ObjectType": { + "type": "string", + "description": "The type of the object that triggered this event" + }, + "ObjectName": { + "type": "string", + "description": "The name of the object that triggered this event" + }, + "Version": { + "type": "string", + "description": "The version of the object that triggered this event" + }, + "NBF": { + "type": "number", + "format": "float", + "description": "Not before date of the object that triggered this event" + }, + "EXP": { + "type": "number", + "format": "float", + "description": "The expiration date of the object that triggered this event" + } + } + }, + "KeyVaultKeyNewVersionCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.KeyNewVersionCreated event.", + "properties": { + "Id": { + "type": "string", + "description": "The id of the object that triggered this event." + }, + "VaultName": { + "type": "string", + "description": "Key vault name of the object that triggered this event." + }, + "ObjectType": { + "type": "string", + "description": "The type of the object that triggered this event" + }, + "ObjectName": { + "type": "string", + "description": "The name of the object that triggered this event" + }, + "Version": { + "type": "string", + "description": "The version of the object that triggered this event" + }, + "NBF": { + "type": "number", + "format": "float", + "description": "Not before date of the object that triggered this event" + }, + "EXP": { + "type": "number", + "format": "float", + "description": "The expiration date of the object that triggered this event" + } + } + }, + "KeyVaultSecretExpiredEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.SecretExpired event.", + "properties": { + "Id": { + "type": "string", + "description": "The id of the object that triggered this event." + }, + "VaultName": { + "type": "string", + "description": "Key vault name of the object that triggered this event." + }, + "ObjectType": { + "type": "string", + "description": "The type of the object that triggered this event" + }, + "ObjectName": { + "type": "string", + "description": "The name of the object that triggered this event" + }, + "Version": { + "type": "string", + "description": "The version of the object that triggered this event" + }, + "NBF": { + "type": "number", + "format": "float", + "description": "Not before date of the object that triggered this event" + }, + "EXP": { + "type": "number", + "format": "float", + "description": "The expiration date of the object that triggered this event" + } + } + }, + "KeyVaultSecretNearExpiryEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.SecretNearExpiry event.", + "properties": { + "Id": { + "type": "string", + "description": "The id of the object that triggered this event." + }, + "VaultName": { + "type": "string", + "description": "Key vault name of the object that triggered this event." + }, + "ObjectType": { + "type": "string", + "description": "The type of the object that triggered this event" + }, + "ObjectName": { + "type": "string", + "description": "The name of the object that triggered this event" + }, + "Version": { + "type": "string", + "description": "The version of the object that triggered this event" + }, + "NBF": { + "type": "number", + "format": "float", + "description": "Not before date of the object that triggered this event" + }, + "EXP": { + "type": "number", + "format": "float", + "description": "The expiration date of the object that triggered this event" + } + } + }, + "KeyVaultSecretNewVersionCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.SecretNewVersionCreated event.", + "properties": { + "Id": { + "type": "string", + "description": "The id of the object that triggered this event." + }, + "VaultName": { + "type": "string", + "description": "Key vault name of the object that triggered this event." + }, + "ObjectType": { + "type": "string", + "description": "The type of the object that triggered this event" + }, + "ObjectName": { + "type": "string", + "description": "The name of the object that triggered this event" + }, + "Version": { + "type": "string", + "description": "The version of the object that triggered this event" + }, + "NBF": { + "type": "number", + "format": "float", + "description": "Not before date of the object that triggered this event" + }, + "EXP": { + "type": "number", + "format": "float", + "description": "The expiration date of the object that triggered this event" + } + } + }, + "KeyVaultVaultAccessPolicyChangedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.KeyVault.VaultAccessPolicyChanged event.", + "properties": { + "Id": { + "type": "string", + "description": "The id of the object that triggered this event." + }, + "VaultName": { + "type": "string", + "description": "Key vault name of the object that triggered this event." + }, + "ObjectType": { + "type": "string", + "description": "The type of the object that triggered this event" + }, + "ObjectName": { + "type": "string", + "description": "The name of the object that triggered this event" + }, + "Version": { + "type": "string", + "description": "The version of the object that triggered this event" + }, + "NBF": { + "type": "number", + "format": "float", + "description": "Not before date of the object that triggered this event" + }, + "EXP": { + "type": "number", + "format": "float", + "description": "The expiration date of the object that triggered this event" + } + } + }, + "MachineLearningServicesDatasetDriftDetectedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.DatasetDriftDetected event.", + "properties": { + "dataDriftId": { + "type": "string", + "description": "The ID of the data drift monitor that triggered the event." + }, + "dataDriftName": { + "type": "string", + "description": "The name of the data drift monitor that triggered the event." + }, + "runId": { + "type": "string", + "description": "The ID of the Run that detected data drift." + }, + "baseDatasetId": { + "type": "string", + "description": "The ID of the base Dataset used to detect drift." + }, + "targetDatasetId": { + "type": "string", + "description": "The ID of the target Dataset used to detect drift." + }, + "driftCoefficient": { + "type": "number", + "format": "double", + "description": "The coefficient result that triggered the event." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the target dataset time series that resulted in drift detection." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the target dataset time series that resulted in drift detection." + } + } + }, + "MachineLearningServicesModelDeployedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.ModelDeployed event.", + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the deployed service." + }, + "serviceComputeType": { + "type": "string", + "description": "The compute type (e.g. ACI, AKS) of the deployed service." + }, + "modelIds": { + "type": "string", + "description": "A common separated list of model IDs. The IDs of the models deployed in the service." + }, + "serviceTags": { + "type": "object", + "description": "The tags of the deployed service.", + "additionalProperties": {} + }, + "serviceProperties": { + "type": "object", + "description": "The properties of the deployed service.", + "additionalProperties": {} + } + } + }, + "MachineLearningServicesModelRegisteredEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.ModelRegistered event.", + "properties": { + "modelName": { + "type": "string", + "description": "The name of the model that was registered." + }, + "modelVersion": { + "type": "string", + "description": "The version of the model that was registered." + }, + "modelTags": { + "type": "object", + "description": "The tags of the model that was registered.", + "additionalProperties": {} + }, + "modelProperties": { + "type": "object", + "description": "The properties of the model that was registered.", + "additionalProperties": {} + } + } + }, + "MachineLearningServicesRunCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.RunCompleted event.", + "properties": { + "experimentId": { + "type": "string", + "description": "The ID of the experiment that the run belongs to." + }, + "experimentName": { + "type": "string", + "description": "The name of the experiment that the run belongs to." + }, + "runId": { + "type": "string", + "description": "The ID of the Run that was completed." + }, + "runType": { + "type": "string", + "description": "The Run Type of the completed Run." + }, + "runTags": { + "type": "object", + "description": "The tags of the completed Run.", + "additionalProperties": {} + }, + "runProperties": { + "type": "object", + "description": "The properties of the completed Run.", + "additionalProperties": {} + } + } + }, + "MachineLearningServicesRunStatusChangedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.MachineLearningServices.RunStatusChanged event.", + "properties": { + "experimentId": { + "type": "string", + "description": "The ID of the experiment that the Machine Learning Run belongs to." + }, + "experimentName": { + "type": "string", + "description": "The name of the experiment that the Machine Learning Run belongs to." + }, + "runId": { + "type": "string", + "description": "The ID of the Machine Learning Run." + }, + "runType": { + "type": "string", + "description": "The Run Type of the Machine Learning Run." + }, + "runTags": { + "type": "object", + "description": "The tags of the Machine Learning Run.", + "additionalProperties": {} + }, + "runProperties": { + "type": "object", + "description": "The properties of the Machine Learning Run.", + "additionalProperties": {} + }, + "runStatus": { + "type": "string", + "description": "The status of the Machine Learning Run." + } + } + }, + "MapsGeofenceEnteredEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Maps.GeofenceEntered event.", + "allOf": [ + { + "$ref": "#/definitions/MapsGeofenceEventProperties" + } + ] + }, + "MapsGeofenceEventProperties": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Geofence event (GeofenceEntered, GeofenceExited, GeofenceResult).", + "properties": { + "expiredGeofenceGeometryId": { + "type": "array", + "description": "Lists of the geometry ID of the geofence which is expired relative to the user time in the request.", + "items": { + "type": "string" + } + }, + "geometries": { + "type": "array", + "description": "Lists the fence geometries that either fully contain the coordinate position or have an overlap with the searchBuffer around the fence.", + "items": { + "$ref": "#/definitions/MapsGeofenceGeometry" + }, + "x-ms-identifiers": [] + }, + "invalidPeriodGeofenceGeometryId": { + "type": "array", + "description": "Lists of the geometry ID of the geofence which is in invalid period relative to the user time in the request.", + "items": { + "type": "string" + } + }, + "isEventPublished": { + "type": "boolean", + "description": "True if at least one event is published to the Azure Maps event subscriber, false if no event is published to the Azure Maps event subscriber." + } + } + }, + "MapsGeofenceExitedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Maps.GeofenceExited event.", + "allOf": [ + { + "$ref": "#/definitions/MapsGeofenceEventProperties" + } + ] + }, + "MapsGeofenceGeometry": { + "type": "object", + "description": "The geofence geometry.", + "properties": { + "deviceId": { + "type": "string", + "description": "ID of the device." + }, + "distance": { + "type": "number", + "format": "float", + "description": "Distance from the coordinate to the closest border of the geofence. Positive means the coordinate is outside of the geofence. If the coordinate is outside of the geofence, but more than the value of searchBuffer away from the closest geofence border, then the value is 999. Negative means the coordinate is inside of the geofence. If the coordinate is inside the polygon, but more than the value of searchBuffer away from the closest geofencing border,then the value is -999. A value of 999 means that there is great confidence the coordinate is well outside the geofence. A value of -999 means that there is great confidence the coordinate is well within the geofence." + }, + "geometryId": { + "type": "string", + "description": "The unique ID for the geofence geometry." + }, + "nearestLat": { + "type": "number", + "format": "float", + "description": "Latitude of the nearest point of the geometry." + }, + "nearestLon": { + "type": "number", + "format": "float", + "description": "Longitude of the nearest point of the geometry." + }, + "udId": { + "type": "string", + "description": "The unique id returned from user upload service when uploading a geofence. Will not be included in geofencing post API." + } + } + }, + "MapsGeofenceResultEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Maps.GeofenceResult event.", + "allOf": [ + { + "$ref": "#/definitions/MapsGeofenceEventProperties" + } + ] + }, + "MediaJobCanceledEventData": { + "type": "object", + "description": "Job canceled event data. Schema of the data property of an EventGridEvent for a\nMicrosoft.Media.JobCanceled event.", + "properties": { + "outputs": { + "type": "array", + "description": "Gets the Job outputs.", + "items": { + "$ref": "#/definitions/MediaJobOutput" + }, + "x-ms-identifiers": [] + } + }, + "allOf": [ + { + "$ref": "#/definitions/MediaJobStateChangeEventData" + } + ] + }, + "MediaJobCancelingEventData": { + "type": "object", + "description": "Job canceling event data. Schema of the data property of an EventGridEvent for\na Microsoft.Media.JobCanceling event.", + "allOf": [ + { + "$ref": "#/definitions/MediaJobStateChangeEventData" + } + ] + }, + "MediaJobError": { + "type": "object", + "description": "Details of JobOutput errors.", + "properties": { + "code": { + "$ref": "#/definitions/MediaJobErrorCode", + "description": "Error code describing the error.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "A human-readable language-dependent representation of the error.", + "readOnly": true + }, + "category": { + "$ref": "#/definitions/MediaJobErrorCategory", + "description": "Helps with categorization of errors.", + "readOnly": true + }, + "retry": { + "$ref": "#/definitions/MediaJobRetry", + "description": "Indicates that it may be possible to retry the Job. If retry is unsuccessful, please contact Azure support via Azure Portal.", + "readOnly": true + }, + "details": { + "type": "array", + "description": "An array of details about specific errors that led to this reported error.", + "items": { + "$ref": "#/definitions/MediaJobErrorDetail" + }, + "readOnly": true, + "x-ms-identifiers": [] + } + } + }, + "MediaJobErrorCategory": { + "type": "string", + "description": "Error categories for Media Job Errors.", + "enum": [ + "Service", + "Download", + "Upload", + "Configuration", + "Content", + "Account" + ], + "x-ms-enum": { + "name": "MediaJobErrorCategory", + "modelAsString": true, + "values": [ + { + "name": "Service", + "value": "Service", + "description": "The error is service related." + }, + { + "name": "Download", + "value": "Download", + "description": "The error is download related." + }, + { + "name": "Upload", + "value": "Upload", + "description": "The error is upload related." + }, + { + "name": "Configuration", + "value": "Configuration", + "description": "The error is configuration related." + }, + { + "name": "Content", + "value": "Content", + "description": "The error is related to data in the input files." + }, + { + "name": "Account", + "value": "Account", + "description": "The error is related to account information." + } + ] + } + }, + "MediaJobErrorCode": { + "type": "string", + "description": "Media Job Error Codes.", + "enum": [ + "ServiceError", + "ServiceTransientError", + "DownloadNotAccessible", + "DownloadTransientError", + "UploadNotAccessible", + "UploadTransientError", + "ConfigurationUnsupported", + "ContentMalformed", + "ContentUnsupported", + "IdentityUnsupported" + ], + "x-ms-enum": { + "name": "MediaJobErrorCode", + "modelAsString": true, + "values": [ + { + "name": "ServiceError", + "value": "ServiceError", + "description": "Fatal service error, please contact support." + }, + { + "name": "ServiceTransientError", + "value": "ServiceTransientError", + "description": "Transient error, please retry, if retry is unsuccessful, please contact support." + }, + { + "name": "DownloadNotAccessible", + "value": "DownloadNotAccessible", + "description": "While trying to download the input files, the files were not accessible, please check the availability of the source." + }, + { + "name": "DownloadTransientError", + "value": "DownloadTransientError", + "description": "While trying to download the input files, there was an issue during transfer (storage service, network errors), see details and check your source." + }, + { + "name": "UploadNotAccessible", + "value": "UploadNotAccessible", + "description": "While trying to upload the output files, the destination was not reachable, please check the availability of the destination." + }, + { + "name": "UploadTransientError", + "value": "UploadTransientError", + "description": "While trying to upload the output files, there was an issue during transfer (storage service, network errors), see details and check your destination." + }, + { + "name": "ConfigurationUnsupported", + "value": "ConfigurationUnsupported", + "description": "There was a problem with the combination of input files and the configuration settings applied, fix the configuration settings and retry with the same input, or change input to match the configuration." + }, + { + "name": "ContentMalformed", + "value": "ContentMalformed", + "description": "There was a problem with the input content (for example: zero byte files, or corrupt/non-decodable files), check the input files." + }, + { + "name": "ContentUnsupported", + "value": "ContentUnsupported", + "description": "There was a problem with the format of the input (not valid media file, or an unsupported file/codec), check the validity of the input files." + }, + { + "name": "IdentityUnsupported", + "value": "IdentityUnsupported", + "description": "There is an error verifying to the account identity. Check and fix the identity configurations and retry. If unsuccessful, please contact support." + } + ] + } + }, + "MediaJobErrorDetail": { + "type": "object", + "description": "Details of JobOutput errors.", + "properties": { + "code": { + "type": "string", + "description": "Code describing the error detail.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "A human-readable representation of the error.", + "readOnly": true + } + } + }, + "MediaJobErroredEventData": { + "type": "object", + "description": "Job error state event data. Schema of the data property of an EventGridEvent\nfor a Microsoft.Media.JobErrored event.", + "properties": { + "outputs": { + "type": "array", + "description": "Gets the Job outputs.", + "items": { + "$ref": "#/definitions/MediaJobOutput" + }, + "x-ms-identifiers": [] + } + }, + "allOf": [ + { + "$ref": "#/definitions/MediaJobStateChangeEventData" + } + ] + }, + "MediaJobFinishedEventData": { + "type": "object", + "description": "Job finished event data. Schema of the data property of an EventGridEvent for a\nMicrosoft.Media.JobFinished event.", + "properties": { + "outputs": { + "type": "array", + "description": "Gets the Job outputs.", + "items": { + "$ref": "#/definitions/MediaJobOutput" + }, + "x-ms-identifiers": [] + } + }, + "allOf": [ + { + "$ref": "#/definitions/MediaJobStateChangeEventData" + } + ] + }, + "MediaJobOutput": { + "type": "object", + "description": "The event data for a Job output.", + "properties": { + "@odataType": { + "type": "string", + "description": "The discriminator for derived types." + }, + "error": { + "$ref": "#/definitions/MediaJobError", + "description": "Gets the Job output error." + }, + "label": { + "type": "string", + "description": "Gets the Job output label." + }, + "progress": { + "type": "integer", + "format": "int64", + "description": "Gets the Job output progress." + }, + "state": { + "$ref": "#/definitions/MediaJobState", + "description": "Gets the Job output state." + } + }, + "discriminator": "@odataType", + "required": [ + "@odataType", + "progress", + "state" + ] + }, + "MediaJobOutputAsset": { + "type": "object", + "description": "The event data for a Job output asset.", + "properties": { + "assetName": { + "type": "string", + "description": "Gets the Job output asset name." + } + }, + "allOf": [ + { + "$ref": "#/definitions/MediaJobOutput" + } + ], + "x-ms-discriminator-value": "#Microsoft.Media.JobOutputAsset" + }, + "MediaJobOutputCanceledEventData": { + "type": "object", + "description": "Job output canceled event data. Schema of the data property of an\nEventGridEvent for a Microsoft.Media.JobOutputCanceled event.", + "allOf": [ + { + "$ref": "#/definitions/MediaJobOutputStateChangeEventData" + } + ] + }, + "MediaJobOutputCancelingEventData": { + "type": "object", + "description": "Job output canceling event data. Schema of the data property of an\nEventGridEvent for a Microsoft.Media.JobOutputCanceling event.", + "allOf": [ + { + "$ref": "#/definitions/MediaJobOutputStateChangeEventData" + } + ] + }, + "MediaJobOutputErroredEventData": { + "type": "object", + "description": "Job output error event data. Schema of the data property of an EventGridEvent\nfor a Microsoft.Media.JobOutputErrored event.", + "allOf": [ + { + "$ref": "#/definitions/MediaJobOutputStateChangeEventData" + } + ] + }, + "MediaJobOutputFinishedEventData": { + "type": "object", + "description": "Job output finished event data. Schema of the data property of an\nEventGridEvent for a Microsoft.Media.JobOutputFinished event.", + "allOf": [ + { + "$ref": "#/definitions/MediaJobOutputStateChangeEventData" + } + ] + }, + "MediaJobOutputProcessingEventData": { + "type": "object", + "description": "Job output processing event data. Schema of the data property of an\nEventGridEvent for a Microsoft.Media.JobOutputProcessing event.", + "allOf": [ + { + "$ref": "#/definitions/MediaJobOutputStateChangeEventData" + } + ] + }, + "MediaJobOutputProgressEventData": { + "type": "object", + "description": "Job Output Progress Event Data. Schema of the Data property of an\n EventGridEvent for a Microsoft.Media.JobOutputProgress event.", + "properties": { + "label": { + "type": "string", + "description": "Gets the Job output label." + }, + "progress": { + "type": "integer", + "format": "int64", + "description": "Gets the Job output progress." + }, + "jobCorrelationData": { + "type": "object", + "description": "Gets the Job correlation data.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "MediaJobOutputScheduledEventData": { + "type": "object", + "description": "Job output scheduled event data. Schema of the data property of an\nEventGridEvent for a Microsoft.Media.JobOutputScheduled event.", + "allOf": [ + { + "$ref": "#/definitions/MediaJobOutputStateChangeEventData" + } + ] + }, + "MediaJobOutputStateChangeEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a\n Microsoft.Media.JobOutputStateChange event.", + "properties": { + "previousState": { + "$ref": "#/definitions/MediaJobState", + "description": "The previous state of the Job.", + "readOnly": true + }, + "output": { + "$ref": "#/definitions/MediaJobOutput", + "description": "Gets the output." + }, + "jobCorrelationData": { + "type": "object", + "description": "Gets the Job correlation data.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "MediaJobProcessingEventData": { + "type": "object", + "description": "Job processing event data. Schema of the data property of an EventGridEvent for\na Microsoft.Media.JobProcessing event.", + "allOf": [ + { + "$ref": "#/definitions/MediaJobStateChangeEventData" + } + ] + }, + "MediaJobRetry": { + "type": "string", + "description": "Media Job Retry Options.", + "enum": [ + "DoNotRetry", + "MayRetry" + ], + "x-ms-enum": { + "name": "MediaJobRetry", + "modelAsString": true, + "values": [ + { + "name": "DoNotRetry", + "value": "DoNotRetry", + "description": "Issue needs to be investigated and then the job resubmitted with corrections or retried once the underlying issue has been corrected." + }, + { + "name": "MayRetry", + "value": "MayRetry", + "description": "Issue may be resolved after waiting for a period of time and resubmitting the same Job." + } + ] + } + }, + "MediaJobScheduledEventData": { + "type": "object", + "description": "Job scheduled event data. Schema of the data property of an EventGridEvent for\na Microsoft.Media.JobScheduled event.", + "allOf": [ + { + "$ref": "#/definitions/MediaJobStateChangeEventData" + } + ] + }, + "MediaJobState": { + "type": "string", + "description": "State of a Media Job.", + "enum": [ + "Canceled", + "Canceling", + "Error", + "Finished", + "Processing", + "Queued", + "Scheduled" + ], + "x-ms-enum": { + "name": "MediaJobState", + "modelAsString": true, + "values": [ + { + "name": "Canceled", + "value": "Canceled", + "description": "The job was canceled. This is a final state for the job." + }, + { + "name": "Canceling", + "value": "Canceling", + "description": "The job is in the process of being canceled. This is a transient state for the job." + }, + { + "name": "Error", + "value": "Error", + "description": "The job has encountered an error. This is a final state for the job." + }, + { + "name": "Finished", + "value": "Finished", + "description": "The job is finished. This is a final state for the job." + }, + { + "name": "Processing", + "value": "Processing", + "description": "The job is processing. This is a transient state for the job." + }, + { + "name": "Queued", + "value": "Queued", + "description": "The job is in a queued state, waiting for resources to become available. This is a transient state." + }, + { + "name": "Scheduled", + "value": "Scheduled", + "description": "The job is being scheduled to run on an available resource. This is a transient state, between queued and processing states." + } + ] + } + }, + "MediaJobStateChangeEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a\n Microsoft.Media.JobStateChange event.", + "properties": { + "previousState": { + "$ref": "#/definitions/MediaJobState", + "description": "The previous state of the Job.", + "readOnly": true + }, + "state": { + "$ref": "#/definitions/MediaJobState", + "description": "The new state of the Job.", + "readOnly": true + }, + "correlationData": { + "type": "object", + "description": "Gets the Job correlation data.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "MediaLiveEventChannelArchiveHeartbeatEventData": { + "type": "object", + "description": "Channel Archive heartbeat event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventChannelArchiveHeartbeat event.", + "properties": { + "channelLatencyMs": { + "type": "string", + "description": "Gets the channel latency in ms.", + "readOnly": true + }, + "latencyResultCode": { + "type": "string", + "description": "Gets the latency result code.", + "readOnly": true + } + }, + "required": [ + "channelLatencyMs", + "latencyResultCode" + ] + }, + "MediaLiveEventConnectionRejectedEventData": { + "type": "object", + "description": "Encoder connection rejected event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventConnectionRejected event.", + "properties": { + "ingestUrl": { + "type": "string", + "description": "Gets the ingest URL provided by the live event.", + "readOnly": true + }, + "streamId": { + "type": "string", + "description": "Gets the stream Id.", + "readOnly": true + }, + "encoderIp": { + "type": "string", + "description": "Gets the remote IP.", + "readOnly": true + }, + "encoderPort": { + "type": "string", + "description": "Gets the remote port.", + "readOnly": true + }, + "resultCode": { + "type": "string", + "description": "Gets the result code." + } + } + }, + "MediaLiveEventEncoderConnectedEventData": { + "type": "object", + "description": "Encoder connect event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventEncoderConnected event.", + "properties": { + "ingestUrl": { + "type": "string", + "description": "Gets the ingest URL provided by the live event.", + "readOnly": true + }, + "streamId": { + "type": "string", + "description": "Gets the stream Id.", + "readOnly": true + }, + "encoderIp": { + "type": "string", + "description": "Gets the remote IP.", + "readOnly": true + }, + "encoderPort": { + "type": "string", + "description": "Gets the remote port.", + "readOnly": true + } + } + }, + "MediaLiveEventEncoderDisconnectedEventData": { + "type": "object", + "description": "Encoder disconnected event data. Schema of the Data property of an EventGridEvent for a Microsoft.Media.LiveEventEncoderDisconnected event.", + "properties": { + "ingestUrl": { + "type": "string", + "description": "Gets the ingest URL provided by the live event.", + "readOnly": true + }, + "streamId": { + "type": "string", + "description": "Gets the stream Id.", + "readOnly": true + }, + "encoderIp": { + "type": "string", + "description": "Gets the remote IP.", + "readOnly": true + }, + "encoderPort": { + "type": "string", + "description": "Gets the remote port.", + "readOnly": true + }, + "resultCode": { + "type": "string", + "description": "Gets the result code." + } + } + }, + "MediaLiveEventIncomingDataChunkDroppedEventData": { + "type": "object", + "description": "Ingest fragment dropped event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIncomingDataChunkDropped event.", + "properties": { + "timestamp": { + "type": "string", + "description": "Gets the timestamp of the data chunk dropped.", + "readOnly": true + }, + "trackType": { + "type": "string", + "description": "Gets the type of the track (Audio / Video).", + "readOnly": true + }, + "bitrate": { + "type": "integer", + "format": "int64", + "description": "Gets the bitrate of the track.", + "readOnly": true + }, + "timescale": { + "type": "string", + "description": "Gets the timescale of the Timestamp." + }, + "resultCode": { + "type": "string", + "description": "Gets the result code for fragment drop operation.", + "readOnly": true + }, + "trackName": { + "type": "string", + "description": "Gets the name of the track for which fragment is dropped.", + "readOnly": true + } + } + }, + "MediaLiveEventIncomingStreamReceivedEventData": { + "type": "object", + "description": "Encoder connect event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIncomingStreamReceived event.", + "properties": { + "ingestUrl": { + "type": "string", + "description": "Gets the ingest URL provided by the live event.", + "readOnly": true + }, + "trackType": { + "type": "string", + "description": "Gets the type of the track (Audio / Video).", + "readOnly": true + }, + "trackName": { + "type": "string", + "description": "Gets the track name.", + "readOnly": true + }, + "bitrate": { + "type": "integer", + "format": "int64", + "description": "Gets the bitrate of the track.", + "readOnly": true + }, + "encoderIp": { + "type": "string", + "description": "Gets the remote IP.", + "readOnly": true + }, + "encoderPort": { + "type": "string", + "description": "Gets the remote port.", + "readOnly": true + }, + "timestamp": { + "type": "string", + "description": "Gets the first timestamp of the data chunk received.", + "readOnly": true + }, + "duration": { + "type": "string", + "description": "Gets the duration of the first data chunk.", + "readOnly": true + }, + "timescale": { + "type": "string", + "description": "Gets the timescale in which timestamp is represented.", + "readOnly": true + } + } + }, + "MediaLiveEventIncomingStreamsOutOfSyncEventData": { + "type": "object", + "description": "Incoming streams out of sync event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIncomingStreamsOutOfSync event.", + "properties": { + "minLastTimestamp": { + "type": "string", + "description": "Gets the minimum last timestamp received.", + "readOnly": true + }, + "typeOfStreamWithMinLastTimestamp": { + "type": "string", + "description": "Gets the type of stream with minimum last timestamp.", + "readOnly": true + }, + "maxLastTimestamp": { + "type": "string", + "description": "Gets the maximum timestamp among all the tracks (audio or video).", + "readOnly": true + }, + "typeOfStreamWithMaxLastTimestamp": { + "type": "string", + "description": "Gets the type of stream with maximum last timestamp.", + "readOnly": true + }, + "timescaleOfMinLastTimestamp": { + "type": "string", + "description": "Gets the timescale in which \\\"MinLastTimestamp\\\" is represented.", + "readOnly": true + }, + "timescaleOfMaxLastTimestamp": { + "type": "string", + "description": "Gets the timescale in which \\\"MaxLastTimestamp\\\" is represented.", + "readOnly": true + } + } + }, + "MediaLiveEventIncomingVideoStreamsOutOfSyncEventData": { + "type": "object", + "description": "Incoming video stream out of sync event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIncomingVideoStreamsOutOfSync event.", + "properties": { + "firstTimestamp": { + "type": "string", + "description": "Gets the first timestamp received for one of the quality levels.", + "readOnly": true + }, + "firstDuration": { + "type": "string", + "description": "Gets the duration of the data chunk with first timestamp.", + "readOnly": true + }, + "secondTimestamp": { + "type": "string", + "description": "Gets the timestamp received for some other quality levels.", + "readOnly": true + }, + "secondDuration": { + "type": "string", + "description": "Gets the duration of the data chunk with second timestamp.", + "readOnly": true + }, + "timescale": { + "type": "string", + "description": "Gets the timescale in which both the timestamps and durations are represented.", + "readOnly": true + } + } + }, + "MediaLiveEventIngestHeartbeatEventData": { + "type": "object", + "description": "Ingest heartbeat event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventIngestHeartbeat event.", + "properties": { + "trackType": { + "type": "string", + "description": "Gets the type of the track (Audio / Video).", + "readOnly": true + }, + "trackName": { + "type": "string", + "description": "Gets the track name.", + "readOnly": true + }, + "transcriptionLanguage": { + "type": "string", + "description": "Gets the Live Transcription language.", + "readOnly": true + }, + "transcriptionState": { + "type": "string", + "description": "Gets the Live Transcription state.", + "readOnly": true + }, + "bitrate": { + "type": "integer", + "format": "int64", + "description": "Gets the bitrate of the track.", + "readOnly": true + }, + "incomingBitrate": { + "type": "integer", + "format": "int64", + "description": "Gets the incoming bitrate.", + "readOnly": true + }, + "ingestDriftValue": { + "type": "string", + "description": "Gets the track ingest drift value.", + "readOnly": true + }, + "lastFragmentArrivalTime": { + "type": "string", + "description": "Gets the arrival UTC time of the last fragment.", + "readOnly": true + }, + "lastTimestamp": { + "type": "string", + "description": "Gets the last timestamp.", + "readOnly": true + }, + "timescale": { + "type": "string", + "description": "Gets the timescale of the last timestamp.", + "readOnly": true + }, + "overlapCount": { + "type": "integer", + "format": "int64", + "description": "Gets the fragment Overlap count.", + "readOnly": true + }, + "discontinuityCount": { + "type": "integer", + "format": "int64", + "description": "Gets the fragment Discontinuity count.", + "readOnly": true + }, + "nonincreasingCount": { + "type": "integer", + "format": "int64", + "description": "Gets Non increasing count.", + "readOnly": true + }, + "unexpectedBitrate": { + "type": "boolean", + "description": "Gets a value indicating whether unexpected bitrate is present or not.", + "readOnly": true + }, + "state": { + "type": "string", + "description": "Gets the state of the live event.", + "readOnly": true + }, + "healthy": { + "type": "boolean", + "description": "Gets a value indicating whether preview is healthy or not.", + "readOnly": true + } + } + }, + "MediaLiveEventTrackDiscontinuityDetectedEventData": { + "type": "object", + "description": "Ingest track discontinuity detected event data. Schema of the data property of an EventGridEvent for a Microsoft.Media.LiveEventTrackDiscontinuityDetected event.", + "properties": { + "trackType": { + "type": "string", + "description": "Gets the type of the track (Audio / Video).", + "readOnly": true + }, + "trackName": { + "type": "string", + "description": "Gets the track name.", + "readOnly": true + }, + "bitrate": { + "type": "integer", + "format": "int64", + "description": "Gets the bitrate.", + "readOnly": true + }, + "previousTimestamp": { + "type": "string", + "description": "Gets the timestamp of the previous fragment.", + "readOnly": true + }, + "newTimestamp": { + "type": "string", + "description": "Gets the timestamp of the current fragment.", + "readOnly": true + }, + "timescale": { + "type": "string", + "description": "Gets the timescale in which both timestamps and discontinuity gap are represented.", + "readOnly": true + }, + "discontinuityGap": { + "type": "string", + "description": "Gets the discontinuity gap between PreviousTimestamp and NewTimestamp.", + "readOnly": true + } + } + }, + "MicrosoftTeamsUserIdentifierModel": { + "type": "object", + "description": "A Microsoft Teams user.", + "properties": { + "userId": { + "type": "string", + "description": "The Id of the Microsoft Teams user. If not anonymous, this is the AAD object Id of the user." + }, + "isAnonymous": { + "type": "boolean", + "description": "True if the Microsoft Teams user is anonymous. By default false if missing." + }, + "cloud": { + "$ref": "#/definitions/CommunicationCloudEnvironmentModel", + "description": "The cloud that the Microsoft Teams user belongs to. By default 'public' if missing." + } + }, + "required": [ + "userId" + ] + }, + "PhoneNumberIdentifierModel": { + "type": "object", + "description": "A phone number.", + "properties": { + "value": { + "type": "string", + "description": "The phone number in E.164 format." + } + }, + "required": [ + "value" + ] + }, + "PolicyInsightsPolicyStateChangedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.PolicyInsights.PolicyStateChanged event.", + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The time that the resource was scanned by Azure Policy in the Universal ISO 8601 DateTime format yyyy-MM-ddTHH:mm:ss.fffffffZ." + }, + "policyAssignmentId": { + "type": "string", + "description": "The resource ID of the policy assignment." + }, + "policyDefinitionId": { + "type": "string", + "description": "The resource ID of the policy definition." + }, + "policyDefinitionReferenceId": { + "type": "string", + "description": "The reference ID for the policy definition inside the initiative definition, if the policy assignment is for an initiative. May be empty." + }, + "complianceState": { + "type": "string", + "description": "The compliance state of the resource with respect to the policy assignment." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription ID of the resource." + }, + "complianceReasonCode": { + "type": "string", + "description": "The compliance reason code. May be empty." + } + } + }, + "PolicyInsightsPolicyStateCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.PolicyInsights.PolicyStateCreated event.", + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The time that the resource was scanned by Azure Policy in the Universal ISO 8601 DateTime format yyyy-MM-ddTHH:mm:ss.fffffffZ." + }, + "policyAssignmentId": { + "type": "string", + "description": "The resource ID of the policy assignment." + }, + "policyDefinitionId": { + "type": "string", + "description": "The resource ID of the policy definition." + }, + "policyDefinitionReferenceId": { + "type": "string", + "description": "The reference ID for the policy definition inside the initiative definition, if the policy assignment is for an initiative. May be empty." + }, + "complianceState": { + "type": "string", + "description": "The compliance state of the resource with respect to the policy assignment." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription ID of the resource." + }, + "complianceReasonCode": { + "type": "string", + "description": "The compliance reason code. May be empty." + } + } + }, + "PolicyInsightsPolicyStateDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.PolicyInsights.PolicyStateDeleted event.", + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The time that the resource was scanned by Azure Policy in the Universal ISO 8601 DateTime format yyyy-MM-ddTHH:mm:ss.fffffffZ." + }, + "policyAssignmentId": { + "type": "string", + "description": "The resource ID of the policy assignment." + }, + "policyDefinitionId": { + "type": "string", + "description": "The resource ID of the policy definition." + }, + "policyDefinitionReferenceId": { + "type": "string", + "description": "The reference ID for the policy definition inside the initiative definition, if the policy assignment is for an initiative. May be empty." + }, + "complianceState": { + "type": "string", + "description": "The compliance state of the resource with respect to the policy assignment." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription ID of the resource." + }, + "complianceReasonCode": { + "type": "string", + "description": "The compliance reason code. May be empty." + } + } + }, + "RedisExportRDBCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Cache.ExportRDBCompleted event.", + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The time at which the event occurred." + }, + "name": { + "type": "string", + "description": "The name of this event." + }, + "status": { + "type": "string", + "description": "The status of this event. Failed or succeeded" + } + } + }, + "RedisImportRDBCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Cache.ImportRDBCompleted event.", + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The time at which the event occurred." + }, + "name": { + "type": "string", + "description": "The name of this event." + }, + "status": { + "type": "string", + "description": "The status of this event. Failed or succeeded" + } + } + }, + "RedisPatchingCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Cache.PatchingCompleted event.", + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The time at which the event occurred." + }, + "name": { + "type": "string", + "description": "The name of this event." + }, + "status": { + "type": "string", + "description": "The status of this event. Failed or succeeded" + } + } + }, + "RedisScalingCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Cache.ScalingCompleted event.", + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The time at which the event occurred." + }, + "name": { + "type": "string", + "description": "The name of this event." + }, + "status": { + "type": "string", + "description": "The status of this event. Failed or succeeded" + } + } + }, + "ResourceActionCancelData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceActionCancel event. This is raised when a resource action operation is canceled.", + "properties": { + "tenantId": { + "type": "string", + "description": "The tenant ID of the resource." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription ID of the resource." + }, + "resourceGroup": { + "type": "string", + "description": "The resource group of the resource." + }, + "resourceProvider": { + "type": "string", + "description": "The resource provider performing the operation." + }, + "resourceUri": { + "type": "string", + "description": "The URI of the resource in the operation." + }, + "operationName": { + "type": "string", + "description": "The operation that was performed." + }, + "status": { + "type": "string", + "description": "The status of the operation." + }, + "authorization": { + "$ref": "#/definitions/ResourceAuthorization", + "description": "The requested authorization for the operation." + }, + "claims": { + "type": "object", + "description": "The properties of the claims.", + "additionalProperties": { + "type": "string" + } + }, + "correlationId": { + "type": "string", + "description": "An operation ID used for troubleshooting." + }, + "httpRequest": { + "$ref": "#/definitions/ResourceHttpRequest", + "description": "The details of the operation." + } + } + }, + "ResourceActionFailureData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceActionFailure event. This is raised when a resource action operation fails.", + "properties": { + "tenantId": { + "type": "string", + "description": "The tenant ID of the resource." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription ID of the resource." + }, + "resourceGroup": { + "type": "string", + "description": "The resource group of the resource." + }, + "resourceProvider": { + "type": "string", + "description": "The resource provider performing the operation." + }, + "resourceUri": { + "type": "string", + "description": "The URI of the resource in the operation." + }, + "operationName": { + "type": "string", + "description": "The operation that was performed." + }, + "status": { + "type": "string", + "description": "The status of the operation." + }, + "authorization": { + "$ref": "#/definitions/ResourceAuthorization", + "description": "The requested authorization for the operation." + }, + "claims": { + "type": "object", + "description": "The properties of the claims.", + "additionalProperties": { + "type": "string" + } + }, + "correlationId": { + "type": "string", + "description": "An operation ID used for troubleshooting." + }, + "httpRequest": { + "$ref": "#/definitions/ResourceHttpRequest", + "description": "The details of the operation." + } + } + }, + "ResourceActionSuccessData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceActionSuccess event. This is raised when a resource action operation succeeds.", + "properties": { + "tenantId": { + "type": "string", + "description": "The tenant ID of the resource." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription ID of the resource." + }, + "resourceGroup": { + "type": "string", + "description": "The resource group of the resource." + }, + "resourceProvider": { + "type": "string", + "description": "The resource provider performing the operation." + }, + "resourceUri": { + "type": "string", + "description": "The URI of the resource in the operation." + }, + "operationName": { + "type": "string", + "description": "The operation that was performed." + }, + "status": { + "type": "string", + "description": "The status of the operation." + }, + "authorization": { + "$ref": "#/definitions/ResourceAuthorization", + "description": "The requested authorization for the operation." + }, + "claims": { + "type": "object", + "description": "The properties of the claims.", + "additionalProperties": { + "type": "string" + } + }, + "correlationId": { + "type": "string", + "description": "An operation ID used for troubleshooting." + }, + "httpRequest": { + "$ref": "#/definitions/ResourceHttpRequest", + "description": "The details of the operation." + } + } + }, + "ResourceAuthorization": { + "type": "object", + "description": "The details of the authorization for the resource.", + "properties": { + "scope": { + "type": "string", + "description": "The scope of the authorization." + }, + "action": { + "type": "string", + "description": "The action being requested." + }, + "evidence": { + "type": "object", + "description": "The evidence for the authorization.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ResourceDeleteCancelData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceDeleteCancel event. This is raised when a resource delete operation is canceled.", + "properties": { + "tenantId": { + "type": "string", + "description": "The tenant ID of the resource." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription ID of the resource." + }, + "resourceGroup": { + "type": "string", + "description": "The resource group of the resource." + }, + "resourceProvider": { + "type": "string", + "description": "The resource provider performing the operation." + }, + "resourceUri": { + "type": "string", + "description": "The URI of the resource in the operation." + }, + "operationName": { + "type": "string", + "description": "The operation that was performed." + }, + "status": { + "type": "string", + "description": "The status of the operation." + }, + "authorization": { + "$ref": "#/definitions/ResourceAuthorization", + "description": "The requested authorization for the operation." + }, + "claims": { + "type": "object", + "description": "The properties of the claims.", + "additionalProperties": { + "type": "string" + } + }, + "correlationId": { + "type": "string", + "description": "An operation ID used for troubleshooting." + }, + "httpRequest": { + "$ref": "#/definitions/ResourceHttpRequest", + "description": "The details of the operation." + } + } + }, + "ResourceDeleteFailureData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceDeleteFailure event. This is raised when a resource delete operation fails.", + "properties": { + "tenantId": { + "type": "string", + "description": "The tenant ID of the resource." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription ID of the resource." + }, + "resourceGroup": { + "type": "string", + "description": "The resource group of the resource." + }, + "resourceProvider": { + "type": "string", + "description": "The resource provider performing the operation." + }, + "resourceUri": { + "type": "string", + "description": "The URI of the resource in the operation." + }, + "operationName": { + "type": "string", + "description": "The operation that was performed." + }, + "status": { + "type": "string", + "description": "The status of the operation." + }, + "authorization": { + "$ref": "#/definitions/ResourceAuthorization", + "description": "The requested authorization for the operation." + }, + "claims": { + "type": "object", + "description": "The properties of the claims.", + "additionalProperties": { + "type": "string" + } + }, + "correlationId": { + "type": "string", + "description": "An operation ID used for troubleshooting." + }, + "httpRequest": { + "$ref": "#/definitions/ResourceHttpRequest", + "description": "The details of the operation." + } + } + }, + "ResourceDeleteSuccessData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceDeleteSuccess event. This is raised when a resource delete operation succeeds.", + "properties": { + "tenantId": { + "type": "string", + "description": "The tenant ID of the resource." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription ID of the resource." + }, + "resourceGroup": { + "type": "string", + "description": "The resource group of the resource." + }, + "resourceProvider": { + "type": "string", + "description": "The resource provider performing the operation." + }, + "resourceUri": { + "type": "string", + "description": "The URI of the resource in the operation." + }, + "operationName": { + "type": "string", + "description": "The operation that was performed." + }, + "status": { + "type": "string", + "description": "The status of the operation." + }, + "authorization": { + "$ref": "#/definitions/ResourceAuthorization", + "description": "The requested authorization for the operation." + }, + "claims": { + "type": "object", + "description": "The properties of the claims.", + "additionalProperties": { + "type": "string" + } + }, + "correlationId": { + "type": "string", + "description": "An operation ID used for troubleshooting." + }, + "httpRequest": { + "$ref": "#/definitions/ResourceHttpRequest", + "description": "The details of the operation." + } + } + }, + "ResourceHttpRequest": { + "type": "object", + "description": "The details of the HTTP request.", + "properties": { + "clientRequestId": { + "type": "string", + "description": "The client request ID." + }, + "clientIpAddress": { + "type": "string", + "description": "The client IP address." + }, + "method": { + "type": "string", + "description": "The request method." + }, + "url": { + "type": "string", + "description": "The url used in the request." + } + } + }, + "ResourceNotificationsHealthResourcesAnnotatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a\nMicrosoft.ResourceNotifications.HealthResources.ResourceAnnotated event.", + "allOf": [ + { + "$ref": "#/definitions/ResourceNotificationsResourceUpdatedEventData" + } + ] + }, + "ResourceNotificationsHealthResourcesAvailabilityStatusChangedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a\nMicrosoft.ResourceNotifications.HealthResources.AvailabilityStatusChanged\nevent.", + "allOf": [ + { + "$ref": "#/definitions/ResourceNotificationsResourceUpdatedEventData" + } + ] + }, + "ResourceNotificationsOperationalDetails": { + "type": "object", + "description": "details of operational info", + "properties": { + "resourceEventTime": { + "type": "string", + "format": "date-time", + "description": "Date and Time when resource was updated" + } + } + }, + "ResourceNotificationsResourceDeletedDetails": { + "type": "object", + "description": "Describes the schema of the properties under resource info which are common\nacross all ARN system topic delete events", + "properties": { + "id": { + "type": "string", + "description": "id of the resource for which the event is being emitted" + }, + "name": { + "type": "string", + "description": "name of the resource for which the event is being emitted" + }, + "type": { + "type": "string", + "description": "the type of the resource for which the event is being emitted" + } + } + }, + "ResourceNotificationsResourceDeletedEventData": { + "type": "object", + "description": "Describes the schema of the common properties across all ARN system topic\ndelete events", + "properties": { + "resourceInfo": { + "$ref": "#/definitions/ResourceNotificationsResourceDeletedDetails", + "description": "resourceInfo details for delete event", + "x-ms-client-name": "resourceDetails" + }, + "operationalInfo": { + "$ref": "#/definitions/ResourceNotificationsOperationalDetails", + "description": "details about operational info", + "x-ms-client-name": "operationalDetails" + } + } + }, + "ResourceNotificationsResourceManagementCreatedOrUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a\nMicrosoft.ResourceNotifications.Resources.CreatedOrUpdated event.", + "allOf": [ + { + "$ref": "#/definitions/ResourceNotificationsResourceUpdatedEventData" + } + ] + }, + "ResourceNotificationsResourceManagementDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a\nMicrosoft.ResourceNotifications.Resources.Deleted event.", + "allOf": [ + { + "$ref": "#/definitions/ResourceNotificationsResourceDeletedEventData" + } + ] + }, + "ResourceNotificationsResourceUpdatedDetails": { + "type": "object", + "description": "Describes the schema of the properties under resource info which are common\nacross all ARN system topic events", + "properties": { + "id": { + "type": "string", + "description": "id of the resource for which the event is being emitted" + }, + "name": { + "type": "string", + "description": "name of the resource for which the event is being emitted" + }, + "type": { + "type": "string", + "description": "the type of the resource for which the event is being emitted" + }, + "location": { + "type": "string", + "description": "the location of the resource for which the event is being emitted" + }, + "tags": { + "type": "object", + "description": "the tags on the resource for which the event is being emitted", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "type": "object", + "description": "properties in the payload of the resource for which the event is being emitted", + "additionalProperties": {} + } + } + }, + "ResourceNotificationsResourceUpdatedEventData": { + "type": "object", + "description": "Describes the schema of the common properties across all ARN system topic events", + "properties": { + "resourceInfo": { + "$ref": "#/definitions/ResourceNotificationsResourceUpdatedDetails", + "description": "resourceInfo details for update event", + "x-ms-client-name": "resourceDetails" + }, + "operationalInfo": { + "$ref": "#/definitions/ResourceNotificationsOperationalDetails", + "description": "details about operational info", + "x-ms-client-name": "operationalDetails" + }, + "apiVersion": { + "type": "string", + "description": "api version of the resource properties bag" + } + } + }, + "ResourceWriteCancelData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceWriteCancel event. This is raised when a resource create or update operation is canceled.", + "properties": { + "tenantId": { + "type": "string", + "description": "The tenant ID of the resource." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription ID of the resource." + }, + "resourceGroup": { + "type": "string", + "description": "The resource group of the resource." + }, + "resourceProvider": { + "type": "string", + "description": "The resource provider performing the operation." + }, + "resourceUri": { + "type": "string", + "description": "The URI of the resource in the operation." + }, + "operationName": { + "type": "string", + "description": "The operation that was performed." + }, + "status": { + "type": "string", + "description": "The status of the operation." + }, + "authorization": { + "$ref": "#/definitions/ResourceAuthorization", + "description": "The requested authorization for the operation." + }, + "claims": { + "type": "object", + "description": "The properties of the claims.", + "additionalProperties": { + "type": "string" + } + }, + "correlationId": { + "type": "string", + "description": "An operation ID used for troubleshooting." + }, + "httpRequest": { + "$ref": "#/definitions/ResourceHttpRequest", + "description": "The details of the operation." + } + } + }, + "ResourceWriteFailureData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceWriteFailure event. This is raised when a resource create or update operation fails.", + "properties": { + "tenantId": { + "type": "string", + "description": "The tenant ID of the resource." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription ID of the resource." + }, + "resourceGroup": { + "type": "string", + "description": "The resource group of the resource." + }, + "resourceProvider": { + "type": "string", + "description": "The resource provider performing the operation." + }, + "resourceUri": { + "type": "string", + "description": "The URI of the resource in the operation." + }, + "operationName": { + "type": "string", + "description": "The operation that was performed." + }, + "status": { + "type": "string", + "description": "The status of the operation." + }, + "authorization": { + "$ref": "#/definitions/ResourceAuthorization", + "description": "The requested authorization for the operation." + }, + "claims": { + "type": "object", + "description": "The properties of the claims.", + "additionalProperties": { + "type": "string" + } + }, + "correlationId": { + "type": "string", + "description": "An operation ID used for troubleshooting." + }, + "httpRequest": { + "$ref": "#/definitions/ResourceHttpRequest", + "description": "The details of the operation." + } + } + }, + "ResourceWriteSuccessData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Resources.ResourceWriteSuccess event. This is raised when a resource create or update operation succeeds.", + "properties": { + "tenantId": { + "type": "string", + "description": "The tenant ID of the resource." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription ID of the resource." + }, + "resourceGroup": { + "type": "string", + "description": "The resource group of the resource." + }, + "resourceProvider": { + "type": "string", + "description": "The resource provider performing the operation." + }, + "resourceUri": { + "type": "string", + "description": "The URI of the resource in the operation." + }, + "operationName": { + "type": "string", + "description": "The operation that was performed." + }, + "status": { + "type": "string", + "description": "The status of the operation." + }, + "authorization": { + "$ref": "#/definitions/ResourceAuthorization", + "description": "The requested authorization for the operation." + }, + "claims": { + "type": "object", + "description": "The properties of the claims.", + "additionalProperties": { + "type": "string" + } + }, + "correlationId": { + "type": "string", + "description": "An operation ID used for troubleshooting." + }, + "httpRequest": { + "$ref": "#/definitions/ResourceHttpRequest", + "description": "The details of the operation." + } + } + }, + "ServiceApiVersions": { + "type": "string", + "enum": [ + "2024-01-01" + ], + "x-ms-enum": { + "name": "ServiceApiVersions", + "modelAsString": true, + "values": [ + { + "name": "v2024_01_01", + "value": "2024-01-01" + } + ] + } + }, + "ServiceBusActiveMessagesAvailablePeriodicNotificationsEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ServiceBus.ActiveMessagesAvailablePeriodicNotifications event.", + "properties": { + "namespaceName": { + "type": "string", + "description": "The namespace name of the Microsoft.ServiceBus resource." + }, + "requestUri": { + "type": "string", + "description": "The endpoint of the Microsoft.ServiceBus resource." + }, + "entityType": { + "type": "string", + "description": "The entity type of the Microsoft.ServiceBus resource. Could be one of 'queue' or 'subscriber'." + }, + "queueName": { + "type": "string", + "description": "The name of the Microsoft.ServiceBus queue. If the entity type is of type 'subscriber', then this value will be null." + }, + "topicName": { + "type": "string", + "description": "The name of the Microsoft.ServiceBus topic. If the entity type is of type 'queue', then this value will be null." + }, + "subscriptionName": { + "type": "string", + "description": "The name of the Microsoft.ServiceBus topic's subscription. If the entity type is of type 'queue', then this value will be null." + } + } + }, + "ServiceBusActiveMessagesAvailableWithNoListenersEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ServiceBus.ActiveMessagesAvailableWithNoListeners event.", + "properties": { + "namespaceName": { + "type": "string", + "description": "The namespace name of the Microsoft.ServiceBus resource." + }, + "requestUri": { + "type": "string", + "description": "The endpoint of the Microsoft.ServiceBus resource." + }, + "entityType": { + "type": "string", + "description": "The entity type of the Microsoft.ServiceBus resource. Could be one of 'queue' or 'subscriber'." + }, + "queueName": { + "type": "string", + "description": "The name of the Microsoft.ServiceBus queue. If the entity type is of type 'subscriber', then this value will be null." + }, + "topicName": { + "type": "string", + "description": "The name of the Microsoft.ServiceBus topic. If the entity type is of type 'queue', then this value will be null." + }, + "subscriptionName": { + "type": "string", + "description": "The name of the Microsoft.ServiceBus topic's subscription. If the entity type is of type 'queue', then this value will be null." + } + } + }, + "ServiceBusDeadletterMessagesAvailablePeriodicNotificationsEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ServiceBus.DeadletterMessagesAvailablePeriodicNotifications event.", + "properties": { + "namespaceName": { + "type": "string", + "description": "The namespace name of the Microsoft.ServiceBus resource." + }, + "requestUri": { + "type": "string", + "description": "The endpoint of the Microsoft.ServiceBus resource." + }, + "entityType": { + "type": "string", + "description": "The entity type of the Microsoft.ServiceBus resource. Could be one of 'queue' or 'subscriber'." + }, + "queueName": { + "type": "string", + "description": "The name of the Microsoft.ServiceBus queue. If the entity type is of type 'subscriber', then this value will be null." + }, + "topicName": { + "type": "string", + "description": "The name of the Microsoft.ServiceBus topic. If the entity type is of type 'queue', then this value will be null." + }, + "subscriptionName": { + "type": "string", + "description": "The name of the Microsoft.ServiceBus topic's subscription. If the entity type is of type 'queue', then this value will be null." + } + } + }, + "ServiceBusDeadletterMessagesAvailableWithNoListenersEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.ServiceBus.DeadletterMessagesAvailableWithNoListeners event.", + "properties": { + "namespaceName": { + "type": "string", + "description": "The namespace name of the Microsoft.ServiceBus resource." + }, + "requestUri": { + "type": "string", + "description": "The endpoint of the Microsoft.ServiceBus resource." + }, + "entityType": { + "type": "string", + "description": "The entity type of the Microsoft.ServiceBus resource. Could be one of 'queue' or 'subscriber'." + }, + "queueName": { + "type": "string", + "description": "The name of the Microsoft.ServiceBus queue. If the entity type is of type 'subscriber', then this value will be null." + }, + "topicName": { + "type": "string", + "description": "The name of the Microsoft.ServiceBus topic. If the entity type is of type 'queue', then this value will be null." + }, + "subscriptionName": { + "type": "string", + "description": "The name of the Microsoft.ServiceBus topic's subscription. If the entity type is of type 'queue', then this value will be null." + } + } + }, + "SignalRServiceClientConnectionConnectedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.SignalRService.ClientConnectionConnected event.", + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The time at which the event occurred." + }, + "hubName": { + "type": "string", + "description": "The hub of connected client connection." + }, + "connectionId": { + "type": "string", + "description": "The connection Id of connected client connection." + }, + "userId": { + "type": "string", + "description": "The user Id of connected client connection." + } + } + }, + "SignalRServiceClientConnectionDisconnectedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.SignalRService.ClientConnectionDisconnected event.", + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The time at which the event occurred." + }, + "hubName": { + "type": "string", + "description": "The hub of connected client connection." + }, + "connectionId": { + "type": "string", + "description": "The connection Id of connected client connection." + }, + "userId": { + "type": "string", + "description": "The user Id of connected client connection." + }, + "errorMessage": { + "type": "string", + "description": "The message of error that cause the client connection disconnected." + } + } + }, + "StampKind": { + "type": "string", + "description": "Kind of environment where app service plan is.", + "enum": [ + "Public", + "AseV1", + "AseV2" + ], + "x-ms-enum": { + "name": "StampKind", + "modelAsString": true, + "values": [ + { + "name": "Public", + "value": "Public", + "description": "App Service Plan is running on a public stamp." + }, + { + "name": "AseV1", + "value": "AseV1", + "description": "App Service Plan is running on an App Service Environment V1." + }, + { + "name": "AseV2", + "value": "AseV2", + "description": "App Service Plan is running on an App Service Environment V2." + } + ] + } + }, + "StorageAsyncOperationInitiatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.AsyncOperationInitiated event.", + "properties": { + "api": { + "type": "string", + "description": "The name of the API/operation that triggered this event." + }, + "clientRequestId": { + "type": "string", + "description": "A request id provided by the client of the storage API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the storage service for the storage API operation that triggered this event." + }, + "contentType": { + "type": "string", + "description": "The content type of the blob. This is the same as what would be returned in the Content-Type header from the blob." + }, + "contentLength": { + "type": "integer", + "format": "int64", + "description": "The size of the blob in bytes. This is the same as what would be returned in the Content-Length header from the blob." + }, + "blobType": { + "type": "string", + "description": "The type of blob." + }, + "url": { + "type": "string", + "description": "The path to the blob." + }, + "sequencer": { + "type": "string", + "description": "An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name." + }, + "identity": { + "type": "string", + "description": "The identity of the requester that triggered this event." + }, + "storageDiagnostics": { + "type": "object", + "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", + "additionalProperties": {} + } + } + }, + "StorageBlobCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobCreated event.", + "properties": { + "api": { + "type": "string", + "description": "The name of the API/operation that triggered this event." + }, + "clientRequestId": { + "type": "string", + "description": "A request id provided by the client of the storage API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the storage service for the storage API operation that triggered this event." + }, + "eTag": { + "type": "string", + "description": "The etag of the blob at the time this event was triggered." + }, + "contentType": { + "type": "string", + "description": "The content type of the blob. This is the same as what would be returned in the Content-Type header from the blob." + }, + "contentLength": { + "type": "integer", + "format": "int64", + "description": "The size of the blob in bytes. This is the same as what would be returned in the Content-Length header from the blob." + }, + "contentOffset": { + "type": "integer", + "format": "int64", + "description": "The offset of the blob in bytes." + }, + "blobType": { + "type": "string", + "description": "The type of blob." + }, + "url": { + "type": "string", + "description": "The path to the blob." + }, + "sequencer": { + "type": "string", + "description": "An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name." + }, + "identity": { + "type": "string", + "description": "The identity of the requester that triggered this event." + }, + "storageDiagnostics": { + "type": "object", + "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", + "additionalProperties": {} + } + } + }, + "StorageBlobDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobDeleted event.", + "properties": { + "api": { + "type": "string", + "description": "The name of the API/operation that triggered this event." + }, + "clientRequestId": { + "type": "string", + "description": "A request id provided by the client of the storage API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the storage service for the storage API operation that triggered this event." + }, + "contentType": { + "type": "string", + "description": "The content type of the blob. This is the same as what would be returned in the Content-Type header from the blob." + }, + "blobType": { + "type": "string", + "description": "The type of blob." + }, + "url": { + "type": "string", + "description": "The path to the blob." + }, + "sequencer": { + "type": "string", + "description": "An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name." + }, + "identity": { + "type": "string", + "description": "The identity of the requester that triggered this event." + }, + "storageDiagnostics": { + "type": "object", + "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", + "additionalProperties": {} + } + } + }, + "StorageBlobInventoryPolicyCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.BlobInventoryPolicyCompleted event.", + "properties": { + "scheduleDateTime": { + "type": "string", + "format": "date-time", + "description": "The time at which inventory policy was scheduled." + }, + "accountName": { + "type": "string", + "description": "The account name for which inventory policy is registered." + }, + "ruleName": { + "type": "string", + "description": "The rule name for inventory policy." + }, + "policyRunStatus": { + "type": "string", + "description": "The status of inventory run, it can be Succeeded/PartiallySucceeded/Failed." + }, + "policyRunStatusMessage": { + "type": "string", + "description": "The status message for inventory run." + }, + "policyRunId": { + "type": "string", + "description": "The policy run id for inventory run." + }, + "manifestBlobUrl": { + "type": "string", + "description": "The blob URL for manifest file for inventory run." + } + } + }, + "StorageBlobRenamedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobRenamed event.", + "properties": { + "api": { + "type": "string", + "description": "The name of the API/operation that triggered this event." + }, + "clientRequestId": { + "type": "string", + "description": "A request id provided by the client of the storage API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the storage service for the storage API operation that triggered this event." + }, + "sourceUrl": { + "type": "string", + "description": "The path to the blob that was renamed." + }, + "destinationUrl": { + "type": "string", + "description": "The new path to the blob after the rename operation." + }, + "sequencer": { + "type": "string", + "description": "An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name." + }, + "identity": { + "type": "string", + "description": "The identity of the requester that triggered this event." + }, + "storageDiagnostics": { + "type": "object", + "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", + "additionalProperties": {} + } + } + }, + "StorageBlobTierChangedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.BlobTierChanged event.", + "properties": { + "api": { + "type": "string", + "description": "The name of the API/operation that triggered this event." + }, + "clientRequestId": { + "type": "string", + "description": "A request id provided by the client of the storage API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the storage service for the storage API operation that triggered this event." + }, + "contentType": { + "type": "string", + "description": "The content type of the blob. This is the same as what would be returned in the Content-Type header from the blob." + }, + "contentLength": { + "type": "integer", + "format": "int64", + "description": "The size of the blob in bytes. This is the same as what would be returned in the Content-Length header from the blob." + }, + "blobType": { + "type": "string", + "description": "The type of blob." + }, + "url": { + "type": "string", + "description": "The path to the blob." + }, + "sequencer": { + "type": "string", + "description": "An opaque string value representing the logical sequence of events for any particular blob name. Users can use standard string comparison to understand the relative sequence of two events on the same blob name." + }, + "identity": { + "type": "string", + "description": "The identity of the requester that triggered this event." + }, + "storageDiagnostics": { + "type": "object", + "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", + "additionalProperties": {} + } + } + }, + "StorageDirectoryCreatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.DirectoryCreated event.", + "properties": { + "api": { + "type": "string", + "description": "The name of the API/operation that triggered this event." + }, + "clientRequestId": { + "type": "string", + "description": "A request id provided by the client of the storage API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the storage service for the storage API operation that triggered this event." + }, + "eTag": { + "type": "string", + "description": "The etag of the directory at the time this event was triggered." + }, + "url": { + "type": "string", + "description": "The path to the directory." + }, + "sequencer": { + "type": "string", + "description": "An opaque string value representing the logical sequence of events for any particular directory name. Users can use standard string comparison to understand the relative sequence of two events on the same directory name." + }, + "identity": { + "type": "string", + "description": "The identity of the requester that triggered this event." + }, + "storageDiagnostics": { + "type": "object", + "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", + "additionalProperties": {} + } + } + }, + "StorageDirectoryDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.DirectoryDeleted event.", + "properties": { + "api": { + "type": "string", + "description": "The name of the API/operation that triggered this event." + }, + "clientRequestId": { + "type": "string", + "description": "A request id provided by the client of the storage API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the storage service for the storage API operation that triggered this event." + }, + "url": { + "type": "string", + "description": "The path to the deleted directory." + }, + "recursive": { + "type": "string", + "description": "Is this event for a recursive delete operation." + }, + "sequencer": { + "type": "string", + "description": "An opaque string value representing the logical sequence of events for any particular directory name. Users can use standard string comparison to understand the relative sequence of two events on the same directory name." + }, + "identity": { + "type": "string", + "description": "The identity of the requester that triggered this event." + }, + "storageDiagnostics": { + "type": "object", + "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", + "additionalProperties": {} + } + } + }, + "StorageDirectoryRenamedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.DirectoryRenamed event.", + "properties": { + "api": { + "type": "string", + "description": "The name of the API/operation that triggered this event." + }, + "clientRequestId": { + "type": "string", + "description": "A request id provided by the client of the storage API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the storage service for the storage API operation that triggered this event." + }, + "sourceUrl": { + "type": "string", + "description": "The path to the directory that was renamed." + }, + "destinationUrl": { + "type": "string", + "description": "The new path to the directory after the rename operation." + }, + "sequencer": { + "type": "string", + "description": "An opaque string value representing the logical sequence of events for any particular directory name. Users can use standard string comparison to understand the relative sequence of two events on the same directory name." + }, + "identity": { + "type": "string", + "description": "The identity of the requester that triggered this event." + }, + "storageDiagnostics": { + "type": "object", + "description": "For service use only. Diagnostic data occasionally included by the Azure Storage service. This property should be ignored by event consumers.", + "additionalProperties": {} + } + } + }, + "StorageLifecyclePolicyActionSummaryDetail": { + "type": "object", + "description": "Execution statistics of a specific policy action in a Blob Management cycle.", + "properties": { + "totalObjectsCount": { + "type": "integer", + "format": "int64", + "description": "Total number of objects to be acted on by this action." + }, + "successCount": { + "type": "integer", + "format": "int64", + "description": "Number of success operations of this action." + }, + "errorList": { + "type": "string", + "description": "Error messages of this action if any." + } + } + }, + "StorageLifecyclePolicyCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Storage.LifecyclePolicyCompleted event.", + "properties": { + "scheduleTime": { + "type": "string", + "description": "The time the policy task was scheduled." + }, + "deleteSummary": { + "$ref": "#/definitions/StorageLifecyclePolicyActionSummaryDetail", + "description": "Execution statistics of a specific policy action in a Blob Management cycle." + }, + "tierToCoolSummary": { + "$ref": "#/definitions/StorageLifecyclePolicyActionSummaryDetail", + "description": "Execution statistics of a specific policy action in a Blob Management cycle." + }, + "tierToArchiveSummary": { + "$ref": "#/definitions/StorageLifecyclePolicyActionSummaryDetail", + "description": "Execution statistics of a specific policy action in a Blob Management cycle." + } + } + }, + "StorageTaskAssignmentCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.StorageTaskAssignmentCompleted event.", + "properties": { + "status": { + "$ref": "#/definitions/StorageTaskAssignmentCompletedStatus", + "description": "The status for a storage task." + }, + "completedDateTime": { + "type": "string", + "format": "date-time", + "description": "The time at which a storage task was completed.", + "x-ms-client-name": "completedOn" + }, + "taskExecutionId": { + "type": "string", + "description": "The execution id for a storage task." + }, + "taskName": { + "type": "string", + "description": "The task name for a storage task." + }, + "summaryReportBlobUrl": { + "type": "string", + "format": "uri", + "description": "The summary report blob url for a storage task", + "x-ms-client-name": "summaryReportBlobUri" + } + } + }, + "StorageTaskAssignmentCompletedStatus": { + "type": "string", + "description": "The status for a storage task.", + "enum": [ + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "StorageTaskAssignmentCompletedStatus", + "modelAsString": true, + "values": [ + { + "name": "Succeeded", + "value": "Succeeded", + "description": "Succeeded" + }, + { + "name": "Failed", + "value": "Failed", + "description": "Failed" + } + ] + } + }, + "StorageTaskAssignmentQueuedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.StorageTaskAssignmentQueued event.", + "properties": { + "queuedDateTime": { + "type": "string", + "format": "date-time", + "description": "The time at which a storage task was queued.", + "x-ms-client-name": "queuedOn" + }, + "taskExecutionId": { + "type": "string", + "description": "The execution id for a storage task." + } + } + }, + "StorageTaskCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.StorageTaskCompleted event.", + "properties": { + "status": { + "$ref": "#/definitions/StorageTaskCompletedStatus", + "description": "The status for a storage task." + }, + "completedDateTime": { + "type": "string", + "format": "date-time", + "description": "The time at which a storage task was completed." + }, + "taskExecutionId": { + "type": "string", + "description": "The execution id for a storage task." + }, + "taskName": { + "type": "string", + "description": "The task name for a storage task." + }, + "summaryReportBlobUrl": { + "type": "string", + "format": "uri", + "description": "The summary report blob url for a storage task" + } + } + }, + "StorageTaskCompletedStatus": { + "type": "string", + "description": "The status for a storage task.", + "enum": [ + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "StorageTaskCompletedStatus", + "modelAsString": true, + "values": [ + { + "name": "Succeeded", + "value": "Succeeded", + "description": "Succeeded" + }, + { + "name": "Failed", + "value": "Failed", + "description": "Failed" + } + ] + } + }, + "StorageTaskQueuedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Storage.StorageTaskQueued event.", + "properties": { + "queuedDateTime": { + "type": "string", + "format": "date-time", + "description": "The time at which a storage task was queued." + }, + "taskExecutionId": { + "type": "string", + "description": "The execution id for a storage task." + } + } + }, + "SubscriptionDeletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a\nMicrosoft.EventGrid.SystemEvents.SubscriptionDeletedEvent event.", + "properties": { + "eventSubscriptionId": { + "type": "string", + "description": "The Azure resource ID of the deleted event subscription.", + "readOnly": true + } + } + }, + "SubscriptionValidationEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.EventGrid.SystemEvents.SubscriptionValidationEvent event.", + "properties": { + "validationCode": { + "type": "string", + "description": "The validation code sent by Azure Event Grid to validate an event subscription.\nTo complete the validation handshake, the subscriber must either respond with this validation code as part of the validation response,\nor perform a GET request on the validationUrl (available starting version 2018-05-01-preview).", + "readOnly": true + }, + "validationUrl": { + "type": "string", + "description": "The validation URL sent by Azure Event Grid (available starting version 2018-05-01-preview).\nTo complete the validation handshake, the subscriber must either respond with the validationCode as part of the validation response,\nor perform a GET request on the validationUrl (available starting version 2018-05-01-preview).", + "readOnly": true + } + } + }, + "SubscriptionValidationResponse": { + "type": "object", + "description": "To complete an event subscription validation handshake, a subscriber can use\neither the validationCode or the validationUrl received in a\nSubscriptionValidationEvent. When the validationCode is used, the\nSubscriptionValidationResponse can be used to build the response.", + "properties": { + "validationResponse": { + "type": "string", + "description": "The validation response sent by the subscriber to Azure Event Grid to complete the validation of an event subscription." + } + } + }, + "WebAppServicePlanUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.AppServicePlanUpdated event.", + "properties": { + "appServicePlanEventTypeDetail": { + "$ref": "#/definitions/AppServicePlanEventTypeDetail", + "description": "Detail of action on the app service plan." + }, + "sku": { + "$ref": "#/definitions/WebAppServicePlanUpdatedEventDataSku", + "description": "sku of app service plan." + }, + "name": { + "type": "string", + "description": "name of the app service plan that had this event." + }, + "clientRequestId": { + "type": "string", + "description": "The client request id generated by the app service for the app service plan API operation that triggered this event." + }, + "correlationRequestId": { + "type": "string", + "description": "The correlation request id generated by the app service for the app service plan API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the app service for the app service plan API operation that triggered this event." + }, + "address": { + "type": "string", + "description": "HTTP request URL of this operation." + }, + "verb": { + "type": "string", + "description": "HTTP verb of this operation." + } + } + }, + "WebAppServicePlanUpdatedEventDataSku": { + "type": "object", + "description": "sku of app service plan.", + "properties": { + "name": { + "type": "string", + "description": "name of app service plan sku." + }, + "Tier": { + "type": "string", + "description": "tier of app service plan sku." + }, + "Size": { + "type": "string", + "description": "size of app service plan sku." + }, + "Family": { + "type": "string", + "description": "family of app service plan sku." + }, + "Capacity": { + "type": "string", + "description": "capacity of app service plan sku." + } + } + }, + "WebAppUpdatedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.AppUpdated event.", + "properties": { + "appEventTypeDetail": { + "$ref": "#/definitions/AppEventTypeDetail", + "description": "Detail of action on the app." + }, + "name": { + "type": "string", + "description": "name of the web site that had this event." + }, + "clientRequestId": { + "type": "string", + "description": "The client request id generated by the app service for the site API operation that triggered this event." + }, + "correlationRequestId": { + "type": "string", + "description": "The correlation request id generated by the app service for the site API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the app service for the site API operation that triggered this event." + }, + "address": { + "type": "string", + "description": "HTTP request URL of this operation." + }, + "verb": { + "type": "string", + "description": "HTTP verb of this operation." + } + } + }, + "WebBackupOperationCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.BackupOperationCompleted event.", + "properties": { + "appEventTypeDetail": { + "$ref": "#/definitions/AppEventTypeDetail", + "description": "Detail of action on the app." + }, + "name": { + "type": "string", + "description": "name of the web site that had this event." + }, + "clientRequestId": { + "type": "string", + "description": "The client request id generated by the app service for the site API operation that triggered this event." + }, + "correlationRequestId": { + "type": "string", + "description": "The correlation request id generated by the app service for the site API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the app service for the site API operation that triggered this event." + }, + "address": { + "type": "string", + "description": "HTTP request URL of this operation." + }, + "verb": { + "type": "string", + "description": "HTTP verb of this operation." + } + } + }, + "WebBackupOperationFailedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.BackupOperationFailed event.", + "properties": { + "appEventTypeDetail": { + "$ref": "#/definitions/AppEventTypeDetail", + "description": "Detail of action on the app." + }, + "name": { + "type": "string", + "description": "name of the web site that had this event." + }, + "clientRequestId": { + "type": "string", + "description": "The client request id generated by the app service for the site API operation that triggered this event." + }, + "correlationRequestId": { + "type": "string", + "description": "The correlation request id generated by the app service for the site API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the app service for the site API operation that triggered this event." + }, + "address": { + "type": "string", + "description": "HTTP request URL of this operation." + }, + "verb": { + "type": "string", + "description": "HTTP verb of this operation." + } + } + }, + "WebBackupOperationStartedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.BackupOperationStarted event.", + "properties": { + "appEventTypeDetail": { + "$ref": "#/definitions/AppEventTypeDetail", + "description": "Detail of action on the app." + }, + "name": { + "type": "string", + "description": "name of the web site that had this event." + }, + "clientRequestId": { + "type": "string", + "description": "The client request id generated by the app service for the site API operation that triggered this event." + }, + "correlationRequestId": { + "type": "string", + "description": "The correlation request id generated by the app service for the site API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the app service for the site API operation that triggered this event." + }, + "address": { + "type": "string", + "description": "HTTP request URL of this operation." + }, + "verb": { + "type": "string", + "description": "HTTP verb of this operation." + } + } + }, + "WebRestoreOperationCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.RestoreOperationCompleted event.", + "properties": { + "appEventTypeDetail": { + "$ref": "#/definitions/AppEventTypeDetail", + "description": "Detail of action on the app." + }, + "name": { + "type": "string", + "description": "name of the web site that had this event." + }, + "clientRequestId": { + "type": "string", + "description": "The client request id generated by the app service for the site API operation that triggered this event." + }, + "correlationRequestId": { + "type": "string", + "description": "The correlation request id generated by the app service for the site API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the app service for the site API operation that triggered this event." + }, + "address": { + "type": "string", + "description": "HTTP request URL of this operation." + }, + "verb": { + "type": "string", + "description": "HTTP verb of this operation." + } + } + }, + "WebRestoreOperationFailedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.RestoreOperationFailed event.", + "properties": { + "appEventTypeDetail": { + "$ref": "#/definitions/AppEventTypeDetail", + "description": "Detail of action on the app." + }, + "name": { + "type": "string", + "description": "name of the web site that had this event." + }, + "clientRequestId": { + "type": "string", + "description": "The client request id generated by the app service for the site API operation that triggered this event." + }, + "correlationRequestId": { + "type": "string", + "description": "The correlation request id generated by the app service for the site API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the app service for the site API operation that triggered this event." + }, + "address": { + "type": "string", + "description": "HTTP request URL of this operation." + }, + "verb": { + "type": "string", + "description": "HTTP verb of this operation." + } + } + }, + "WebRestoreOperationStartedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.RestoreOperationStarted event.", + "properties": { + "appEventTypeDetail": { + "$ref": "#/definitions/AppEventTypeDetail", + "description": "Detail of action on the app." + }, + "name": { + "type": "string", + "description": "name of the web site that had this event." + }, + "clientRequestId": { + "type": "string", + "description": "The client request id generated by the app service for the site API operation that triggered this event." + }, + "correlationRequestId": { + "type": "string", + "description": "The correlation request id generated by the app service for the site API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the app service for the site API operation that triggered this event." + }, + "address": { + "type": "string", + "description": "HTTP request URL of this operation." + }, + "verb": { + "type": "string", + "description": "HTTP verb of this operation." + } + } + }, + "WebSlotSwapCompletedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapCompleted event.", + "properties": { + "appEventTypeDetail": { + "$ref": "#/definitions/AppEventTypeDetail", + "description": "Detail of action on the app." + }, + "name": { + "type": "string", + "description": "name of the web site that had this event." + }, + "clientRequestId": { + "type": "string", + "description": "The client request id generated by the app service for the site API operation that triggered this event." + }, + "correlationRequestId": { + "type": "string", + "description": "The correlation request id generated by the app service for the site API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the app service for the site API operation that triggered this event." + }, + "address": { + "type": "string", + "description": "HTTP request URL of this operation." + }, + "verb": { + "type": "string", + "description": "HTTP verb of this operation." + } + } + }, + "WebSlotSwapFailedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapFailed event.", + "properties": { + "appEventTypeDetail": { + "$ref": "#/definitions/AppEventTypeDetail", + "description": "Detail of action on the app." + }, + "name": { + "type": "string", + "description": "name of the web site that had this event." + }, + "clientRequestId": { + "type": "string", + "description": "The client request id generated by the app service for the site API operation that triggered this event." + }, + "correlationRequestId": { + "type": "string", + "description": "The correlation request id generated by the app service for the site API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the app service for the site API operation that triggered this event." + }, + "address": { + "type": "string", + "description": "HTTP request URL of this operation." + }, + "verb": { + "type": "string", + "description": "HTTP verb of this operation." + } + } + }, + "WebSlotSwapStartedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapStarted event.", + "properties": { + "appEventTypeDetail": { + "$ref": "#/definitions/AppEventTypeDetail", + "description": "Detail of action on the app." + }, + "name": { + "type": "string", + "description": "name of the web site that had this event." + }, + "clientRequestId": { + "type": "string", + "description": "The client request id generated by the app service for the site API operation that triggered this event." + }, + "correlationRequestId": { + "type": "string", + "description": "The correlation request id generated by the app service for the site API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the app service for the site API operation that triggered this event." + }, + "address": { + "type": "string", + "description": "HTTP request URL of this operation." + }, + "verb": { + "type": "string", + "description": "HTTP verb of this operation." + } + } + }, + "WebSlotSwapWithPreviewCancelledEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapWithPreviewCancelled event.", + "properties": { + "appEventTypeDetail": { + "$ref": "#/definitions/AppEventTypeDetail", + "description": "Detail of action on the app." + }, + "name": { + "type": "string", + "description": "name of the web site that had this event." + }, + "clientRequestId": { + "type": "string", + "description": "The client request id generated by the app service for the site API operation that triggered this event." + }, + "correlationRequestId": { + "type": "string", + "description": "The correlation request id generated by the app service for the site API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the app service for the site API operation that triggered this event." + }, + "address": { + "type": "string", + "description": "HTTP request URL of this operation." + }, + "verb": { + "type": "string", + "description": "HTTP verb of this operation." + } + } + }, + "WebSlotSwapWithPreviewStartedEventData": { + "type": "object", + "description": "Schema of the Data property of an EventGridEvent for a Microsoft.Web.SlotSwapWithPreviewStarted event.", + "properties": { + "appEventTypeDetail": { + "$ref": "#/definitions/AppEventTypeDetail", + "description": "Detail of action on the app." + }, + "name": { + "type": "string", + "description": "name of the web site that had this event." + }, + "clientRequestId": { + "type": "string", + "description": "The client request id generated by the app service for the site API operation that triggered this event." + }, + "correlationRequestId": { + "type": "string", + "description": "The correlation request id generated by the app service for the site API operation that triggered this event." + }, + "requestId": { + "type": "string", + "description": "The request id generated by the app service for the site API operation that triggered this event." + }, + "address": { + "type": "string", + "description": "HTTP request URL of this operation." + }, + "verb": { + "type": "string", + "description": "HTTP verb of this operation." + } + } + }, + "recordingChannelType": { + "type": "string", + "description": "Recording channel type", + "enum": [ + "Mixed", + "Unmixed" + ], + "x-ms-enum": { + "name": "recordingChannelType", + "modelAsString": true, + "values": [ + { + "name": "Mixed", + "value": "Mixed", + "description": "Mixed channel type" + }, + { + "name": "Unmixed", + "value": "Unmixed", + "description": "Unmixed channel type" + } + ] + } + }, + "recordingContentType": { + "type": "string", + "description": "Recording content type", + "enum": [ + "AudioVideo", + "Audio" + ], + "x-ms-enum": { + "name": "recordingContentType", + "modelAsString": true, + "values": [ + { + "name": "AudioVideo", + "value": "AudioVideo", + "description": "AudioVideo content type" + }, + { + "name": "Audio", + "value": "Audio", + "description": "Audio content type" + } + ] + } + }, + "recordingFormatType": { + "type": "string", + "description": "Recording format type", + "enum": [ + "Wav", + "Mp3", + "Mp4" + ], + "x-ms-enum": { + "name": "recordingFormatType", + "modelAsString": true, + "values": [ + { + "name": "Wav", + "value": "Wav", + "description": "WAV format" + }, + { + "name": "Mp3", + "value": "Mp3", + "description": "MP3 format" + }, + { + "name": "Mp4", + "value": "Mp4", + "description": "MP4 format" + } + ] + } + } + }, + "parameters": {} +} diff --git a/specification/eventgrid/data-plane/readme.md b/specification/eventgrid/data-plane/readme.md index 58f44dc6168d9..a7786a2ee4b8a 100644 --- a/specification/eventgrid/data-plane/readme.md +++ b/specification/eventgrid/data-plane/readme.md @@ -144,6 +144,7 @@ input-file: - Microsoft.ResourceNotifications/stable/2018-01-01/HealthResources.json - Microsoft.ResourceNotifications/stable/2018-01-01/Resources.json - Microsoft.AVS/stable/2018-01-01/PrivateCloud.json +- Microsoft.ApiCenter/stable/2018-01-01/ApiCenter.json ``` ### Tag: package-2023-06-01-preview @@ -245,6 +246,16 @@ input-file: ``` +### Tag: package-2024-01-01 + +These settings apply only when `--tag=package-2024-01-01` is specified on the command line. Will generate EventGrid SystemEvents from TypeSpec. + +``` yaml $(tag) == 'package-2024-01-01' +input-file: +- Microsoft.EventGrid/stable/2018-01-01/EventGrid.json +- Microsoft.EventGrid/stable/2024-01-01/SystemEvents.json +``` + ### Suppression ``` yaml directive: diff --git a/specification/monitor/data-plane/Microsoft.Insights/stable/2024-02-01/examples/MetricBatchExample.json b/specification/monitor/data-plane/Microsoft.Insights/stable/2024-02-01/examples/MetricBatchExample.json new file mode 100644 index 0000000000000..ed0aeedea39f0 --- /dev/null +++ b/specification/monitor/data-plane/Microsoft.Insights/stable/2024-02-01/examples/MetricBatchExample.json @@ -0,0 +1,543 @@ +{ + "parameters": { + "baseUrl": "https://eastus.metrics.monitor.azure.com", + "subscriptionId": "12345678-abcd-1234-abcd-123456789abc", + "starttime": "2023-02-01T20:00:00.123Z", + "endtime": "2023-02-01T23:00:00.345Z", + "interval": "PT15M", + "metricnamespace": "Microsoft.Storage/storageAccounts", + "metricnames": "Ingress,Egress", + "aggregation": "average,minimum,maximum", + "top": 10, + "orderby": "average desc", + "filter": "ApiName eq 'GetBlob' or ApiName eq 'GetBlobServiceProperties' and Authentication eq '*'", + "api-version": "2024-02-01", + "batchRequest": { + "resourceids": [ + "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/TestGroup/providers/Microsoft.Storage/storageAccounts/TestStorage1", + "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/TestGroup/providers/Microsoft.Storage/storageAccounts/TestStorage2" + ] + } + }, + "responses": { + "200": { + "body": { + "values": [ + { + "starttime": "2023-02-01T20:00:00.123Z", + "endtime": "2023-02-01T23:00:00.345Z", + "interval": "PT15M", + "value": [ + { + "id": "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/TestGroup/providers/Microsoft.Storage/storageAccounts/TestStorage1/providers/Microsoft.Insights/metrics/Ingress", + "type": "Microsoft.Insights/metrics", + "name": { + "value": "Ingress", + "localizedValue": "Ingress" + }, + "displayDescription": "The amount of ingress data, in bytes. This number includes ingress from an external client into Azure Storage as well as ingress within Azure.", + "unit": "Bytes", + "timeseries": [ + { + "metadatavalues": [ + { + "name": { + "value": "apiname", + "localizedValue": "apiname" + }, + "value": "GetBlob" + }, + { + "name": { + "value": "authentication", + "localizedValue": "authentication" + }, + "value": "SAS" + } + ], + "data": [ + { + "timeStamp": "2023-02-01T20:00:00Z", + "average": 437, + "minimum": 437, + "maximum": 437 + }, + { + "timeStamp": "2023-02-01T20:15:00Z", + "average": 438.0735294117647, + "minimum": 437, + "maximum": 583 + }, + { + "timeStamp": "2023-02-01T20:30:00Z", + "average": 437, + "minimum": 437, + "maximum": 437 + }, + { + "timeStamp": "2023-02-01T20:45:00Z", + "average": 437.54477611940297, + "minimum": 437, + "maximum": 583 + }, + { + "timeStamp": "2023-02-01T21:00:00Z", + "average": 437, + "minimum": 437, + "maximum": 437 + }, + { + "timeStamp": "2023-02-01T21:15:00Z", + "average": 438.0735294117647, + "minimum": 437, + "maximum": 583 + }, + { + "timeStamp": "2023-02-01T21:30:00Z", + "average": 437, + "minimum": 437, + "maximum": 437 + }, + { + "timeStamp": "2023-02-01T21:45:00Z", + "average": 437.54477611940297, + "minimum": 437, + "maximum": 583 + }, + { + "timeStamp": "2023-02-01T22:00:00Z", + "average": 437, + "minimum": 437, + "maximum": 437 + }, + { + "timeStamp": "2023-02-01T22:15:00Z", + "average": 438.0735294117647, + "minimum": 437, + "maximum": 583 + }, + { + "timeStamp": "2023-02-01T22:30:00Z", + "average": 437, + "minimum": 437, + "maximum": 437 + }, + { + "timeStamp": "2023-02-01T22:45:00Z", + "average": 437.542750929368, + "minimum": 437, + "maximum": 583 + } + ] + }, + { + "metadatavalues": [ + { + "name": { + "value": "apiname", + "localizedValue": "apiname" + }, + "value": "GetBlobServiceProperties" + }, + { + "name": { + "value": "authentication", + "localizedValue": "authentication" + }, + "value": "AccountKey" + } + ], + "data": [ + { + "timeStamp": "2023-02-01T20:00:00Z" + }, + { + "timeStamp": "2023-02-01T20:15:00Z" + }, + { + "timeStamp": "2023-02-01T20:30:00Z" + }, + { + "timeStamp": "2023-02-01T20:45:00Z" + }, + { + "timeStamp": "2023-02-01T21:00:00Z" + }, + { + "timeStamp": "2023-02-01T21:15:00Z" + }, + { + "timeStamp": "2023-02-01T21:30:00Z" + }, + { + "timeStamp": "2023-02-01T21:45:00Z" + }, + { + "timeStamp": "2023-02-01T22:00:00Z", + "average": 342, + "minimum": 342, + "maximum": 342 + }, + { + "timeStamp": "2023-02-01T22:15:00Z" + }, + { + "timeStamp": "2023-02-01T22:30:00Z" + }, + { + "timeStamp": "2023-02-01T22:45:00Z" + } + ] + } + ], + "errorCode": "Success" + }, + { + "id": "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/TestGroup/providers/Microsoft.Storage/storageAccounts/TestStorage1/providers/Microsoft.Insights/metrics/Egress", + "type": "Microsoft.Insights/metrics", + "name": { + "value": "Egress", + "localizedValue": "Egress" + }, + "displayDescription": "The amount of egress data. This number includes egress to external client from Azure Storage as well as egress within Azure. As a result, this number does not reflect billable egress.", + "unit": "Bytes", + "timeseries": [ + { + "metadatavalues": [ + { + "name": { + "value": "apiname", + "localizedValue": "apiname" + }, + "value": "GetBlobServiceProperties" + }, + { + "name": { + "value": "authentication", + "localizedValue": "authentication" + }, + "value": "AccountKey" + } + ], + "data": [ + { + "timeStamp": "2023-02-01T20:00:00Z" + }, + { + "timeStamp": "2023-02-01T20:15:00Z" + }, + { + "timeStamp": "2023-02-01T20:30:00Z" + }, + { + "timeStamp": "2023-02-01T20:45:00Z" + }, + { + "timeStamp": "2023-02-01T21:00:00Z" + }, + { + "timeStamp": "2023-02-01T21:15:00Z" + }, + { + "timeStamp": "2023-02-01T21:30:00Z" + }, + { + "timeStamp": "2023-02-01T21:45:00Z" + }, + { + "timeStamp": "2023-02-01T22:00:00Z", + "average": 796, + "minimum": 796, + "maximum": 796 + }, + { + "timeStamp": "2023-02-01T22:15:00Z" + }, + { + "timeStamp": "2023-02-01T22:30:00Z" + }, + { + "timeStamp": "2023-02-01T22:45:00Z" + } + ] + }, + { + "metadatavalues": [ + { + "name": { + "value": "apiname", + "localizedValue": "apiname" + }, + "value": "GetBlob" + }, + { + "name": { + "value": "authentication", + "localizedValue": "authentication" + }, + "value": "SAS" + } + ], + "data": [ + { + "timeStamp": "2023-02-01T20:00:00Z", + "average": 361, + "minimum": 361, + "maximum": 361 + }, + { + "timeStamp": "2023-02-01T20:15:00Z", + "average": 365.83088235294116, + "minimum": 361, + "maximum": 1018 + }, + { + "timeStamp": "2023-02-01T20:30:00Z", + "average": 361, + "minimum": 361, + "maximum": 361 + }, + { + "timeStamp": "2023-02-01T20:45:00Z", + "average": 363.4514925373134, + "minimum": 361, + "maximum": 1018 + }, + { + "timeStamp": "2023-02-01T21:00:00Z", + "average": 361, + "minimum": 361, + "maximum": 361 + }, + { + "timeStamp": "2023-02-01T21:15:00Z", + "average": 365.83088235294116, + "minimum": 361, + "maximum": 1018 + }, + { + "timeStamp": "2023-02-01T21:30:00Z", + "average": 361, + "minimum": 361, + "maximum": 361 + }, + { + "timeStamp": "2023-02-01T21:45:00Z", + "average": 363.4514925373134, + "minimum": 361, + "maximum": 1018 + }, + { + "timeStamp": "2023-02-01T22:00:00Z", + "average": 361, + "minimum": 361, + "maximum": 361 + }, + { + "timeStamp": "2023-02-01T22:15:00Z", + "average": 365.83088235294116, + "minimum": 361, + "maximum": 1018 + }, + { + "timeStamp": "2023-02-01T22:30:00Z", + "average": 361, + "minimum": 361, + "maximum": 361 + }, + { + "timeStamp": "2023-02-01T22:45:00Z", + "average": 363.4423791821561, + "minimum": 361, + "maximum": 1018 + } + ] + } + ], + "errorCode": "Success" + } + ], + "namespace": "microsoft.storage/storageaccounts", + "resourceregion": "eastus", + "resourceid": "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/TestGroup/providers/Microsoft.Storage/storageAccounts/TestStorage1" + }, + { + "starttime": "2023-02-01T20:00:00.123Z", + "endtime": "2023-02-01T23:00:00.345Z", + "interval": "PT15M", + "value": [ + { + "id": "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/TestGroup/providers/Microsoft.Storage/storageAccounts/TestStorage2/providers/Microsoft.Insights/metrics/Ingress", + "type": "Microsoft.Insights/metrics", + "name": { + "value": "Ingress", + "localizedValue": "Ingress" + }, + "displayDescription": "The amount of ingress data, in bytes. This number includes ingress from an external client into Azure Storage as well as ingress within Azure.", + "unit": "Bytes", + "timeseries": [ + { + "metadatavalues": [ + { + "name": { + "value": "apiname", + "localizedValue": "apiname" + }, + "value": "GetBlobServiceProperties" + }, + { + "name": { + "value": "authentication", + "localizedValue": "authentication" + }, + "value": "AccountKey" + } + ], + "data": [ + { + "timeStamp": "2023-02-01T20:00:00Z" + }, + { + "timeStamp": "2023-02-01T20:15:00Z" + }, + { + "timeStamp": "2023-02-01T20:30:00Z" + }, + { + "timeStamp": "2023-02-01T20:45:00Z" + }, + { + "timeStamp": "2023-02-01T21:00:00Z" + }, + { + "timeStamp": "2023-02-01T21:15:00Z" + }, + { + "timeStamp": "2023-02-01T21:30:00Z" + }, + { + "timeStamp": "2023-02-01T21:45:00Z" + }, + { + "timeStamp": "2023-02-01T22:00:00Z", + "average": 330, + "minimum": 330, + "maximum": 330 + }, + { + "timeStamp": "2023-02-01T22:15:00Z" + }, + { + "timeStamp": "2023-02-01T22:30:00Z" + }, + { + "timeStamp": "2023-02-01T22:45:00Z" + } + ] + } + ], + "errorCode": "Success" + }, + { + "id": "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/TestGroup/providers/Microsoft.Storage/storageAccounts/TestStorage2/providers/Microsoft.Insights/metrics/Egress", + "type": "Microsoft.Insights/metrics", + "name": { + "value": "Egress", + "localizedValue": "Egress" + }, + "displayDescription": "The amount of egress data. This number includes egress to external client from Azure Storage as well as egress within Azure. As a result, this number does not reflect billable egress.", + "unit": "Bytes", + "timeseries": [ + { + "metadatavalues": [ + { + "name": { + "value": "apiname", + "localizedValue": "apiname" + }, + "value": "GetBlobServiceProperties" + }, + { + "name": { + "value": "authentication", + "localizedValue": "authentication" + }, + "value": "AccountKey" + } + ], + "data": [ + { + "timeStamp": "2023-02-01T20:00:00Z" + }, + { + "timeStamp": "2023-02-01T20:15:00Z" + }, + { + "timeStamp": "2023-02-01T20:30:00Z" + }, + { + "timeStamp": "2023-02-01T20:45:00Z" + }, + { + "timeStamp": "2023-02-01T21:00:00Z" + }, + { + "timeStamp": "2023-02-01T21:15:00Z" + }, + { + "timeStamp": "2023-02-01T21:30:00Z" + }, + { + "timeStamp": "2023-02-01T21:45:00Z" + }, + { + "timeStamp": "2023-02-01T22:00:00Z", + "average": 880, + "minimum": 880, + "maximum": 880 + }, + { + "timeStamp": "2023-02-01T22:15:00Z" + }, + { + "timeStamp": "2023-02-01T22:30:00Z" + }, + { + "timeStamp": "2023-02-01T22:45:00Z" + } + ] + } + ], + "errorCode": "Success" + } + ], + "namespace": "microsoft.storage/storageaccounts", + "resourceregion": "eastus", + "resourceid": "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/TestGroup/providers/Microsoft.Storage/storageAccounts/TestStorage2" + } + ] + } + }, + "default": { + "headers": { + "x-ms-error-code": "BadRequest" + }, + "body": { + "error": { + "additionalInfo": [ + { + "type": "string", + "info": "TraceId={00000000-0000-0000-0000-000000000000}" + }, + { + "type": "string", + "info": "ExceptionType=Microsoft.Online.Metrics.MetricsMP.Utilities.RPRequestFormatException" + } + ], + "code": "BadRequest", + "message": "Query endTime: 06/06/2021 00:00:00 is out of the Max metrics retention period: 93.00:00:00, traceId: {00000000-0000-0000-0000-000000000000}" + } + } + } + } +} diff --git a/specification/monitor/data-plane/Microsoft.Insights/stable/2024-02-01/examples/MetricBatchExample2.json b/specification/monitor/data-plane/Microsoft.Insights/stable/2024-02-01/examples/MetricBatchExample2.json new file mode 100644 index 0000000000000..8428210e0ae12 --- /dev/null +++ b/specification/monitor/data-plane/Microsoft.Insights/stable/2024-02-01/examples/MetricBatchExample2.json @@ -0,0 +1,149 @@ +{ + "parameters": { + "baseUrl": "https://westus2.metrics.monitor.azure.com", + "subscriptionId": "12345678-abcd-1234-abcd-123456789abc", + "starttime": "2023-11-07T14:00:00.000Z", + "endtime": "2023-11-07T18:00:00.000Z", + "interval": "FULL", + "metricnamespace": "Microsoft.Cache/Redis", + "metricnames": "cacheWrite", + "aggregation": "average", + "top": 10, + "orderby": "average desc", + "filter": "ShardId eq '0'", + "rollupby": "ShardId", + "api-version": "2024-02-01", + "batchRequest": { + "resourceids": [ + "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/test_redis/providers/Microsoft.Cache/Redis/redis5", + "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/test_redis/providers/Microsoft.Cache/Redis/redis3", + "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/test_redis/providers/Microsoft.Cache/Redis/redis2" + ] + } + }, + "responses": { + "200": { + "body": { + "values": [ + { + "starttime": "2023-11-07T14:00:00Z", + "endtime": "2023-11-07T18:00:00Z", + "interval": "PT4H", + "value": [ + { + "id": "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/test_redis/providers/Microsoft.Cache/Redis/redis5/providers/Microsoft.Insights/metrics/cacheWrite", + "type": "Microsoft.Insights/metrics", + "name": { + "value": "cacheWrite", + "localizedValue": "Cache Write" + }, + "displayDescription": "The amount of data written to the cache in bytes per second. For more details, see https://aka.ms/redis/metrics.", + "unit": "BytesPerSecond", + "timeseries": [ + { + "metadatavalues": [], + "data": [ + { + "timeStamp": "2023-11-07T14:00:00Z", + "average": 35513.760416666664 + } + ] + } + ], + "errorCode": "Success" + } + ], + "namespace": "microsoft.cache/redis", + "resourceregion": "westus2", + "resourceid": "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/test_redis/providers/Microsoft.Cache/Redis/redis5" + }, + { + "starttime": "2023-11-07T14:00:00Z", + "endtime": "2023-11-07T18:00:00Z", + "interval": "PT4H", + "value": [ + { + "id": "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/test_redis/providers/Microsoft.Cache/Redis/redis3/providers/Microsoft.Insights/metrics/cacheWrite", + "type": "Microsoft.Insights/metrics", + "name": { + "value": "cacheWrite", + "localizedValue": "Cache Write" + }, + "displayDescription": "The amount of data written to the cache in bytes per second. For more details, see https://aka.ms/redis/metrics.", + "unit": "BytesPerSecond", + "timeseries": [ + { + "metadatavalues": [], + "data": [ + { + "timeStamp": "2023-11-07T14:00:00Z", + "average": 7135.0625 + } + ] + } + ], + "errorCode": "Success" + } + ], + "namespace": "microsoft.cache/redis", + "resourceregion": "westus2", + "resourceid": "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/test_redis/providers/Microsoft.Cache/Redis/redis3" + }, + { + "starttime": "2023-11-07T14:00:00Z", + "endtime": "2023-11-07T18:00:00Z", + "interval": "PT4H", + "value": [ + { + "id": "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/test_redis/providers/Microsoft.Cache/Redis/redis2/providers/Microsoft.Insights/metrics/cacheWrite", + "type": "Microsoft.Insights/metrics", + "name": { + "value": "cacheWrite", + "localizedValue": "Cache Write" + }, + "displayDescription": "The amount of data written to the cache in bytes per second. For more details, see https://aka.ms/redis/metrics.", + "unit": "BytesPerSecond", + "timeseries": [ + { + "metadatavalues": [], + "data": [ + { + "timeStamp": "2023-11-07T14:00:00Z", + "average": 6723.489583333333 + } + ] + } + ], + "errorCode": "Success" + } + ], + "namespace": "microsoft.cache/redis", + "resourceregion": "westus2", + "resourceid": "/subscriptions/12345678-abcd-1234-abcd-123456789abc/resourceGroups/test_redis/providers/Microsoft.Cache/Redis/redis2" + } + ] + } + }, + "default": { + "headers": { + "x-ms-error-code": "BadRequest" + }, + "body": { + "error": { + "additionalInfo": [ + { + "type": "string", + "info": "TraceId=dd033ebf1e260d815f4bccad149bbc15" + }, + { + "type": "string", + "info": "ExceptionType=Microsoft.Online.Metrics.MetricsMP.Utilities.RPRequestFormatException" + } + ], + "code": "BadRequest", + "message": "Detected invalid time range parameters for API version 2024-02-01. Please use only starttime and endtime to specify a time range." + } + } + } + } +} diff --git a/specification/monitor/data-plane/Microsoft.Insights/stable/2024-02-01/metricBatch.json b/specification/monitor/data-plane/Microsoft.Insights/stable/2024-02-01/metricBatch.json new file mode 100644 index 0000000000000..da083b1c23cba --- /dev/null +++ b/specification/monitor/data-plane/Microsoft.Insights/stable/2024-02-01/metricBatch.json @@ -0,0 +1,279 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Monitor Metric Batch", + "version": "2024-02-01" + }, + "securityDefinitions": { + "AADToken": { + "type": "oauth2", + "tokenUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/token", + "flow": "application", + "description": "Azure Active Directory OAuth2 Authentication", + "scopes": { + "https://metrics.monitor.azure.com/.default": "https://metrics.monitor.azure.com/.default" + } + } + }, + "security": [ + { + "AADToken": [ + "https://metrics.monitor.azure.com/.default" + ] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "endpoint", + "description": "The regional endpoint to use, for example https://eastus.metrics.monitor.azure.com. The region should match the region of the requested resources. For global resources, the region should be 'global'.", + "required": true, + "type": "string", + "in": "path", + "format": "url", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/metrics:getBatch": { + "post": { + "tags": [ + "Metrics" + ], + "operationId": "MetricsBatch_Batch", + "description": "Lists the metric values for multiple resources.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/StartTimeParameter" + }, + { + "$ref": "#/parameters/EndTimeParameter" + }, + { + "$ref": "#/parameters/IntervalParameter" + }, + { + "$ref": "#/parameters/MetricNamespaceParameter" + }, + { + "$ref": "#/parameters/MetricNamesParameter" + }, + { + "$ref": "../../../../common-types/v2/commonMonitoringTypes.json#/parameters/AggregationsParameter" + }, + { + "$ref": "../../../../common-types/v2/commonMonitoringTypes.json#/parameters/TopParameter" + }, + { + "$ref": "../../../../common-types/v2/commonMonitoringTypes.json#/parameters/OrderByParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "../../../../common-types/v2/commonMonitoringTypes.json#/parameters/RollUpByParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "batchRequest", + "in": "body", + "required": true, + "description": "Metrics batch body including the list of resource ids", + "schema": { + "$ref": "#/definitions/ResourceIdList" + } + } + ], + "responses": { + "200": { + "description": "The response to a metrics query.", + "schema": { + "$ref": "#/definitions/MetricResultsResponse" + } + }, + "default": { + "description": "Describes the format of Error response.", + "headers": { + "x-ms-error-code": { + "type": "string", + "description": "Error code for specific error that occurred." + } + }, + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query Storage Metrics": { + "$ref": "./examples/MetricBatchExample.json" + }, + "Query Redis Metrics summary": { + "$ref": "./examples/MetricBatchExample2.json" + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "format": "uuid", + "description": "The subscription identifier for the resources in this batch.", + "x-ms-parameter-location": "method" + }, + "StartTimeParameter": { + "name": "starttime", + "in": "query", + "required": false, + "type": "string", + "description": "The start time of the query. It is a string in the format 'yyyy-MM-ddTHH:mm:ss.fffZ'. If you have specified the endtime parameter, then this parameter is required.\nIf only starttime is specified, then endtime defaults to the current time.\nIf no time interval is specified, the default is 1 hour.", + "x-ms-parameter-location": "method" + }, + "EndTimeParameter": { + "name": "endtime", + "in": "query", + "required": false, + "type": "string", + "description": "The end time of the query. It is a string in the format 'yyyy-MM-ddTHH:mm:ss.fffZ'.", + "x-ms-parameter-location": "method" + }, + "IntervalParameter": { + "name": "interval", + "in": "query", + "required": false, + "type": "string", + "default": "PT1M", + "description": "The interval (i.e. timegrain) of the query in ISO 8601 duration format. Defaults to PT1M. Special case for 'FULL' value that returns single datapoint for entire time span requested.\n*Examples: PT15M, PT1H, P1D, FULL*", + "x-ms-parameter-location": "method" + }, + "MetricNamespaceParameter": { + "name": "metricnamespace", + "in": "query", + "required": true, + "type": "string", + "description": "Metric namespace that contains the requested metric names.", + "x-ms-parameter-location": "method" + }, + "MetricNamesParameter": { + "name": "metricnames", + "in": "query", + "required": true, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "csv", + "description": "The names of the metrics (comma separated) to retrieve.", + "x-ms-parameter-location": "method" + }, + "FilterParameter": { + "name": "filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter is used to reduce the set of metric data returned.
    Example:
    Metric contains metadata A, B and C.
    - Return all time series of C where A = a1 and B = b1 or b2
    **filter=A eq ‘a1’ and B eq ‘b1’ or B eq ‘b2’ and C eq ‘*’**
    - Invalid variant:
    **filter=A eq ‘a1’ and B eq ‘b1’ and C eq ‘*’ or B = ‘b2’**
    This is invalid because the logical or operator cannot separate two different metadata names.
    - Return all time series where A = a1, B = b1 and C = c1:
    **filter=A eq ‘a1’ and B eq ‘b1’ and C eq ‘c1’**
    - Return all time series where A = a1
    **filter=A eq ‘a1’ and B eq ‘*’ and C eq ‘*’**.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version.", + "x-ms-parameter-location": "client" + } + }, + "definitions": { + "ResourceIdList": { + "description": "The comma separated list of resource IDs to query metrics for.", + "type": "object", + "properties": { + "resourceids": { + "description": "The list of resource IDs to query metrics for.", + "type": "array", + "items": { + "type": "string", + "format": "arm-id" + } + } + }, + "example": { + "resourceids": [ + "/subscriptions/123456728-abcd-1234-abcd-123456789abc/resourceGroups/TestGroup/providers/Microsoft.Storage/storageAccounts/TestStorage1", + "/subscriptions/123456728-abcd-1234-abcd-123456789abc/resourceGroups/TestGroup/providers/Microsoft.Storage/storageAccounts/TestStorage2" + ] + } + }, + "MetricResultsResponse": { + "description": "The metrics result for a resource.", + "type": "object", + "properties": { + "values": { + "description": "The collection of metric data responses per resource, per metric.", + "type": "array", + "items": { + "type": "object", + "properties": { + "starttime": { + "type": "string", + "description": "The start time, in datetime format, for which the data was retrieved." + }, + "endtime": { + "type": "string", + "description": "The end time, in datetime format, for which the data was retrieved." + }, + "interval": { + "type": "string", + "description": "The interval (window size) for which the metric data was returned in ISO 8601 duration format with a special case for 'FULL' value that returns single datapoint for entire time span requested (*Examples: PT15M, PT1H, P1D, FULL*). \nThis may be adjusted and different from what was originally requested if AutoAdjustTimegrain=true is specified." + }, + "namespace": { + "type": "string", + "description": "The namespace of the metrics been queried" + }, + "resourceregion": { + "type": "string", + "description": "The region of the resource been queried for metrics." + }, + "resourceid": { + "type": "string", + "description": "The resource that has been queried for metrics." + }, + "value": { + "type": "array", + "items": { + "$ref": "../../../../common-types/v2/commonMonitoringTypes.json#/definitions/Metric" + }, + "description": "The value of the collection." + } + }, + "required": [ + "starttime", + "endtime", + "value" + ] + } + } + } + } + } +} diff --git a/specification/monitor/data-plane/readme.md b/specification/monitor/data-plane/readme.md index 055b9e9fc7d49..880ed1167440e 100644 --- a/specification/monitor/data-plane/readme.md +++ b/specification/monitor/data-plane/readme.md @@ -28,15 +28,23 @@ These are the global settings for the MonitorClient API. title: MonitorClient description: Monitor Management Client openapi-type: data-plane -tag: package-2023-10 +tag: package-2024-02 ``` +### Tag: package-2024-02 + +These settings apply only when `--tag=package-2024-02` is specified on the command line. + +```yaml $(tag) == 'package-2024-02' +input-file: + - Microsoft.Insights/stable/2024-02-01/metricBatch.json +``` ### Tag: package-2023-10 These settings apply only when `--tag=package-2023-10` is specified on the command line. -```yaml $(tag) == 'package-2023-10' +``` yaml $(tag) == 'package-2023-10' input-file: - Microsoft.Insights/stable/2023-10-01/metricBatch.json ``` diff --git a/specification/nginx/resource-manager/readme.md b/specification/nginx/resource-manager/readme.md index 3f1dfdca33ebc..ddebd0de79e70 100644 --- a/specification/nginx/resource-manager/readme.md +++ b/specification/nginx/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the Nginx API. title: NginxManagementClient openapi-type: arm openapi-subtype: rpaas -tag: package-2023-09-01 +tag: package-2024-01-01-preview ``` ### Tag: package-2024-01-01-preview diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/readme.md b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/readme.md new file mode 100644 index 0000000000000..abda335bcebad --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/readme.md @@ -0,0 +1,48 @@ +# orbital + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for orbital. + +## 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 orbital digital ground. + +```yaml +openapi-type: arm +tag: package-2024-03-01 +``` + +### Tag: package-2024-03-01 + +These settings apply only when `--tag=package-2024-03-01` is specified on the command line. + +```yaml $(tag) == 'package-2024-03-01' +input-file: + - stable/2024-03-01/aodg.json +``` + +### Tag: package-2024-03-01-preview + +These settings apply only when `--tag=package-2024-03-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2024-03-01-preview' +input-file: + - preview/2024-03-01-preview/aodg.json +``` \ No newline at end of file diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/aodg.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/aodg.json new file mode 100644 index 0000000000000..4df27effb4cc0 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/aodg.json @@ -0,0 +1,1672 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-03-01", + "title": "Azure Orbital", + "description": "Azure Orbital service.", + "license": { + "name": "Microsoft" + } + }, + "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": { + "/providers/Microsoft.Orbital/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available Orbital Rest API operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "OperationsList": { + "$ref": "./examples/OperationsList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Orbital/groundStations": { + "get": { + "tags": [ + "Ground Station" + ], + "description": "Return list of ground stations.", + "operationId": "GroundStations_ListBySubscription", + "x-ms-examples": { + "List of Ground Stations by Subscription": { + "$ref": "./examples/GroundStationsBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/skipTokenParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Ground Station resources.", + "schema": { + "$ref": "#/definitions/GroundStationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Orbital/groundStations": { + "get": { + "tags": [ + "Ground Station" + ], + "description": "Return list of ground stations.", + "operationId": "GroundStations_List", + "x-ms-examples": { + "List of Ground Stations": { + "$ref": "./examples/GroundStationsList.json" + } + }, + "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" + }, + { + "$ref": "#/parameters/skipTokenParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Ground Station resources.", + "schema": { + "$ref": "#/definitions/GroundStationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Orbital/groundStations/{groundStationName}": { + "get": { + "tags": [ + "Ground Station" + ], + "operationId": "GroundStations_Get", + "description": "Gets the specified ground station in a specified resource group.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/groundStationNameParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ground station resource.", + "schema": { + "$ref": "#/definitions/GroundStation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get GroundStation": { + "$ref": "./examples/GroundStationGet.json" + } + } + }, + "put": { + "tags": [ + "Ground Station" + ], + "description": "Creates or updates a ground station resource.", + "operationId": "GroundStations_CreateOrUpdate", + "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" + }, + { + "$ref": "#/parameters/groundStationNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/GroundStation" + }, + "description": "The parameters to provide for the created ground station." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ground station resource.", + "schema": { + "$ref": "#/definitions/GroundStation" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ground station resource.", + "schema": { + "$ref": "#/definitions/GroundStation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create a ground station": { + "$ref": "./examples/GroundStationCreate.json" + } + } + }, + "patch": { + "tags": [ + "Ground Station" + ], + "operationId": "GroundStations_UpdateTags", + "x-ms-examples": { + "Update Ground Station tags": { + "$ref": "./examples/GroundStationUpdateTags.json" + } + }, + "description": "Updates the specified ground station tags.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsObject" + }, + "description": "Parameters supplied to update ground station tags." + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/groundStationNameParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Ground Station resource.", + "schema": { + "$ref": "#/definitions/GroundStation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Ground Station" + ], + "operationId": "GroundStations_Delete", + "description": "Deletes a specified ground station resource.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/groundStationNameParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete Ground Station": { + "$ref": "./examples/GroundStationDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Orbital/edgeSites/{edgeSiteName}": { + "get": { + "tags": [ + "Edge Site" + ], + "operationId": "EdgeSites_Get", + "description": "Gets the specified edge site in a specified resource group.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/edgeSiteNameParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting EdgeSite resource.", + "schema": { + "$ref": "#/definitions/EdgeSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Edge Site": { + "$ref": "./examples/EdgeSiteGet.json" + } + } + }, + "put": { + "tags": [ + "Edge Site" + ], + "description": "Creates or updates an edge site.", + "operationId": "EdgeSites_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/edgeSiteNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/EdgeSite" + }, + "description": "The parameters to provide for the created Edge Site." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting EdgeSite resource.", + "schema": { + "$ref": "#/definitions/EdgeSite" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting EdgeSite resource.", + "schema": { + "$ref": "#/definitions/EdgeSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create Edge Site": { + "$ref": "./examples/EdgeSiteCreate.json" + } + } + }, + "delete": { + "tags": [ + "Edge Site" + ], + "operationId": "EdgeSites_Delete", + "description": "Deletes a specified edge site resource.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/edgeSiteNameParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete Edge Site": { + "$ref": "./examples/EdgeSiteDelete.json" + } + } + }, + "patch": { + "tags": [ + "Edge Site" + ], + "operationId": "EdgeSites_UpdateTags", + "x-ms-examples": { + "Update Edge Site tags": { + "$ref": "./examples/EdgeSiteUpdateTag.json" + } + }, + "description": "Updates the specified edge site's tags.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsObject" + }, + "description": "Parameters supplied to update the edge site's tags." + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/edgeSiteNameParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Edge Site resource.", + "schema": { + "$ref": "#/definitions/EdgeSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Orbital/edgeSites": { + "get": { + "tags": [ + "Edge Site" + ], + "description": "Returns a list of edge sites for a subscription.", + "operationId": "EdgeSites_ListBySubscription", + "x-ms-examples": { + "List of Edge Sites by Subscription": { + "$ref": "./examples/EdgeSitesBySubscriptionList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/skipTokenParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of edge site resources.", + "schema": { + "$ref": "#/definitions/EdgeSiteListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Orbital/edgeSites": { + "get": { + "tags": [ + "Edge Site" + ], + "description": "Returns a list of edge sites for a resource group.", + "operationId": "EdgeSites_List", + "x-ms-examples": { + "List of Edge Sites by Resource Group": { + "$ref": "./examples/EdgeSitesByResourceGroupList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/skipTokenParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of edge site resources.", + "schema": { + "$ref": "#/definitions/EdgeSiteListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Orbital/l2Connections/{l2ConnectionName}": { + "get": { + "tags": [ + "L2 Connection" + ], + "operationId": "L2Connections_Get", + "description": "Gets the specified L2 connection in a specified resource group.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/l2ConnectionNameParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting L2Connection resource.", + "schema": { + "$ref": "#/definitions/L2Connection" + } + }, + "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 Connection": { + "$ref": "./examples/L2ConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "L2 Connection" + ], + "description": "Creates or updates an L2 Connection.", + "operationId": "L2Connections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/l2ConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/L2Connection" + }, + "description": "The parameters to provide for the created L2 Connection." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting L2Connection resource.", + "schema": { + "$ref": "#/definitions/L2Connection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting L2Connection resource.", + "schema": { + "$ref": "#/definitions/L2Connection" + }, + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "URL for checking the ongoing status of the 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 L2 Connection": { + "$ref": "./examples/L2ConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "L2 Connection" + ], + "operationId": "L2Connections_Delete", + "description": "Deletes a specified L2 Connection resource.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/l2ConnectionNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string", + "description": "URL for determining when an operation has completed." + } + } + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete L2 Connection": { + "$ref": "./examples/L2ConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "L2 Connection" + ], + "operationId": "L2Connections_UpdateTags", + "x-ms-examples": { + "Update L2 Connection tags": { + "$ref": "./examples/L2ConnectionUpdateTag.json" + } + }, + "description": "Updates the specified L2 Connection's tags.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsObject" + }, + "description": "Parameters supplied to update the L2 Connection's tags." + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/l2ConnectionNameParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting L2 Connection resource.", + "schema": { + "$ref": "#/definitions/L2Connection" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "Location": { + "type": "string", + "description": "URL for determining when an operation has completed." + } + } + }, + "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.Orbital/l2Connections": { + "get": { + "tags": [ + "L2 Connection" + ], + "description": "Returns a list of L2 Connections attached to an orbital gateway.", + "operationId": "L2Connections_List", + "x-ms-examples": { + "List of L2 Connections by Resource Group": { + "$ref": "./examples/L2ConnectionsByResourceGroupList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/skipTokenParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of L2 Connection resources.", + "schema": { + "$ref": "#/definitions/L2ConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Orbital/l2Connections": { + "get": { + "tags": [ + "L2 Connection" + ], + "description": "Returns a list of L2 Connections attached to a subscription.", + "operationId": "L2Connections_ListBySubscription", + "x-ms-examples": { + "List of L2 Connections by Subscription": { + "$ref": "./examples/L2ConnectionsBySubscriptionList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/skipTokenParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of L2 Connection resources.", + "schema": { + "$ref": "#/definitions/L2ConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Orbital/edgeSites/{edgeSiteName}/listL2Connections": { + "post": { + "tags": [ + "L2 Connection" + ], + "description": "Returns a list of L2 Connections attached to an edge site.", + "operationId": "EdgeSites_ListL2Connections", + "x-ms-examples": { + "List of L2 Connections by Edge site": { + "$ref": "./examples/L2ConnectionsByEdgeSiteNameList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/edgeSiteNameParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of L2 Connection resources.", + "schema": { + "$ref": "#/definitions/ResourceIdListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Orbital/groundStations/{groundStationName}/listL2Connections": { + "post": { + "tags": [ + "L2 Connection" + ], + "description": "Returns a list of L2 Connections attached to an ground station.", + "operationId": "GroundStations_ListL2Connections", + "x-ms-examples": { + "List of L2 Connections by Ground Station": { + "$ref": "./examples/L2ConnectionsByGroundStationNameList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/groundStationNameParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of L2 Connection resources.", + "schema": { + "$ref": "#/definitions/ResourceIdListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Orbital/globalCommunicationsSites": { + "get": { + "tags": [ + "Global Communications Site" + ], + "description": "Returns a list of the global communications sites that a subscription is authorized to use.", + "operationId": "GlobalCommunicationsSites_ListBySubscription", + "x-ms-examples": { + "List of Global Communications Sites": { + "$ref": "./examples/GlobalCommunicationsSitesBySubscriptionList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of global communications sites.", + "schema": { + "$ref": "#/definitions/GlobalCommunicationsSiteListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource group does not exist, 404 (NotFound) will be returned.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Orbital/globalCommunicationsSites/{globalCommunicationsSiteName}": { + "get": { + "tags": [ + "Global Communications Site" + ], + "operationId": "GlobalCommunicationsSites_Get", + "description": "Gets the specified global communications site in a specified resource group.", + "parameters": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/globalCommunicationsSiteNameParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting GlobalCommunicationsSite.", + "schema": { + "$ref": "#/definitions/GlobalCommunicationsSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Global Communications Site": { + "$ref": "./examples/GlobalCommunicationsSiteGet.json" + } + } + } + } + }, + "definitions": { + "TagsObject": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + }, + "GroundStationListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GroundStation" + }, + "description": "A list of ground station resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListGroundStations API service call." + }, + "GroundStation": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "allOf": [ + { + "$ref": "#/definitions/GroundStationsProperties" + } + ], + "description": "Properties of the Ground Station." + } + }, + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ], + "description": "Ground Station contains one or more antennas." + }, + "Capability": { + "type": "string", + "description": "Capability of the Ground Station.", + "enum": [ + "EarthObservation", + "Communication" + ], + "x-ms-enum": { + "name": "Capability", + "modelAsString": true + } + }, + "EdgeSitesProperties": { + "type": "object", + "required": [ + "globalCommunicationsSite" + ], + "properties": { + "globalCommunicationsSite": { + "allOf": [ + { + "$ref": "#/definitions/ResourceReference" + } + ], + "description": "A reference to global communications site." + } + }, + "description": "Properties object for an edge site." + }, + "PartnerRouter": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The unique name of the partnerRouter." + } + }, + "description": "One of the partner routers within a global communications site." + }, + "LocationData": { + "type": "object", + "required": [ + "city", + "district", + "country" + ], + "properties": { + "city": { + "type": "string", + "description": "The city of the location (e.g., Miami)." + }, + "district": { + "type": "string", + "description": "For example, the state (e.g., Florida), province (e.g., Ontario), or region (e.g., Tuscany) of the location." + }, + "country": { + "type": "string", + "description": "The nation (e.g., United States of America) of the location." + }, + "closestAzureRegion": { + "type": "string", + "description": "The name of the closest Azure region, (e.g., westus2)." + }, + "extra": { + "type": "string", + "x-nullable": true, + "description": "Any extra information needed to uniquely identify the location (e.g., zip code)." + } + }, + "description": "Describes a location outside of Azure." + }, + "GlobalCommunicationsSiteType": { + "type": "string", + "enum": [ + "Edge", + "GroundStation" + ], + "x-ms-enum": { + "name": "GlobalCommunicationsSiteType", + "modelAsString": true + }, + "description": "The type of the global communications site. groundStations can only use sites of type GroundStation, and edgeSites can only use sites of type Edge." + }, + "GlobalCommunicationsSitesProperties": { + "type": "object", + "properties": { + "locationData": { + "allOf": [ + { + "$ref": "#/definitions/LocationData" + } + ], + "description": "Describes the location of the global communications site." + }, + "globalCommunicationsSiteType": { + "type": "string", + "allOf": [ + { + "$ref": "#/definitions/GlobalCommunicationsSiteType" + } + ], + "description": "The type of the global communications site. EdgeSite or GroundStation." + }, + "partnerRouters": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PartnerRouter" + }, + "x-ms-identifiers": [], + "description": "Partner routers connected to this site." + }, + "partnerSiteBandwidth": { + "type": "integer", + "format": "int64", + "minimum": 0, + "readOnly": true, + "description": "The bandwidth per partner router cross-connection at this global communications site, measured in bits per second." + } + }, + "description": "Properties object for a global communications site." + }, + "GlobalCommunicationsSite": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "allOf": [ + { + "$ref": "#/definitions/GlobalCommunicationsSitesProperties" + } + ], + "description": "The properties bag for this resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ], + "description": "A site where the Orbital network is connected to a partner network." + }, + "GlobalCommunicationsSiteListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GlobalCommunicationsSite" + }, + "description": "A list of global communications sites." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for an API service call that lists Global Communications Sites." + }, + "EdgeSite": { + "type": "object", + "required": [ + "properties" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "allOf": [ + { + "$ref": "#/definitions/EdgeSitesProperties" + } + ], + "description": "The properties bag for this resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ], + "description": "A customer's reference to a global communications site site." + }, + "EdgeSiteListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EdgeSite" + }, + "description": "A list of edge site resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for an API service call that lists Edge Sites." + }, + "L2ConnectionsProperties": { + "type": "object", + "required": [ + "edgeSite", + "edgeSitePartnerRouter", + "groundStation", + "groundStationPartnerRouter", + "vlanId" + ], + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "allOf": [ + { + "$ref": "#/definitions/ProvisioningState" + } + ], + "description": "The current state of the resource's creation, deletion, or modification." + }, + "circuitId": { + "type": "string", + "readOnly": true, + "description": "Globally-unique identifier for this connection that is to be used as a circuit ID." + }, + "edgeSite": { + "allOf": [ + { + "$ref": "#/definitions/ResourceReference" + } + ], + "description": "A reference to an Microsoft.Orbital/edgeSites resource to route traffic for." + }, + "edgeSitePartnerRouter": { + "type": "object", + "x-ms-client-flatten": true, + "required": [ + "name" + ], + "x-ms-mutability": [ + "read", + "create" + ], + "properties": { + "name": { + "type": "string", + "description": "The unique name of the partner router that cross-connects with the Orbital Edge Router at the edge site." + } + }, + "description": "The name of the partner router that cross-connects with the Orbital Edge Router at the edge site." + }, + "groundStation": { + "allOf": [ + { + "$ref": "#/definitions/ResourceReference" + } + ], + "description": "A reference to an Microsoft.Orbital/groundStations resource to route traffic for." + }, + "groundStationPartnerRouter": { + "type": "object", + "x-ms-client-flatten": true, + "required": [ + "name" + ], + "x-ms-mutability": [ + "read", + "create" + ], + "properties": { + "name": { + "type": "string", + "description": "The unique name of the partner router that cross-connects with the Orbital Edge Router at the ground station site." + } + }, + "description": "The name of the partner router to establish a connection to within the ground station." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 4094, + "description": "The VLAN ID for the L2 connection." + } + }, + "description": "Properties object for an L2 Connection." + }, + "L2Connection": { + "type": "object", + "required": [ + "properties" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "allOf": [ + { + "$ref": "#/definitions/L2ConnectionsProperties" + } + ], + "description": "The properties bag for this resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ], + "description": "Connects an edge site to an orbital gateway and describes what layer 2 traffic to forward between them." + }, + "L2ConnectionListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/L2Connection" + }, + "description": "A list of L2 Connection resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for an API service call that lists L2 Connections." + }, + "ResourceIdListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The Azure Resource ID." + } + } + }, + "description": "A list of Azure Resource IDs." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for an API service call that lists the resource IDs of resources associated with another resource." + }, + "ProvisioningState": { + "type": "string", + "enum": [ + "Creating", + "Succeeded", + "Failed", + "Canceled", + "Updating", + "Deleting" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "description": "The current state of the resource's creation, deletion, or modification.", + "readOnly": true + }, + "GroundStationsProperties": { + "type": "object", + "required": [ + "capabilities", + "globalCommunicationsSite" + ], + "properties": { + "city": { + "type": "string", + "description": "City of ground station." + }, + "capabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/Capability" + }, + "description": "Ground station capabilities." + }, + "providerName": { + "type": "string", + "description": "Ground station provider name." + }, + "longitudeDegrees": { + "type": "number", + "description": "Longitude of the ground station in decimal degrees." + }, + "latitudeDegrees": { + "type": "number", + "description": "Latitude of the ground station in decimal degrees." + }, + "altitudeMeters": { + "type": "number", + "description": "Altitude of the ground station." + }, + "releaseMode": { + "type": "string", + "enum": [ + "Preview", + "GA" + ], + "x-ms-enum": { + "name": "releaseMode", + "modelAsString": true + }, + "readOnly": true, + "description": "Release Status of a ground station." + }, + "globalCommunicationsSite": { + "allOf": [ + { + "$ref": "#/definitions/ResourceReference" + } + ], + "description": "A reference to global communications site." + } + }, + "description": "List of ground station resource properties." + }, + "ProvisionedBandwidth": { + "type": "object", + "readOnly": true, + "properties": { + "mbps": { + "type": "integer", + "format": "int32", + "minimum": 0, + "readOnly": true, + "description": "The approximate number of megabits per second that are provisioned for the partner on this global communications site." + } + }, + "description": "The approximate bandwidth provisioned for a partner on a global communications site." + }, + "ResourceReference": { + "type": "object", + "required": [ + "id" + ], + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Resource Reference." + } + }, + "parameters": { + "groundStationNameParameter": { + "name": "groundStationName", + "in": "path", + "required": true, + "type": "string", + "description": "Ground Station name.", + "pattern": "^[A-Za-z][A-Za-z0-9-_]+$", + "minLength": 2, + "maxLength": 64, + "x-ms-parameter-location": "method" + }, + "capabilityParameter": { + "name": "capability", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "EarthObservation", + "Communication" + ], + "x-ms-enum": { + "name": "capabilityParameter", + "modelAsString": true + }, + "description": "Ground Station Capability.", + "x-ms-parameter-location": "method" + }, + "edgeSiteNameParameter": { + "name": "edgeSiteName", + "in": "path", + "description": "Edge site name.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9-_]+$", + "minLength": 2, + "maxLength": 64, + "x-ms-parameter-location": "method" + }, + "l2ConnectionNameParameter": { + "name": "l2ConnectionName", + "in": "path", + "description": "L2 Connection name.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9-_]+$", + "minLength": 2, + "maxLength": 64, + "x-ms-parameter-location": "method" + }, + "globalCommunicationsSiteNameParameter": { + "name": "globalCommunicationsSiteName", + "in": "path", + "description": "Global communications Site name.", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9-_]+$", + "minLength": 2, + "maxLength": 64, + "x-ms-parameter-location": "method" + }, + "skipTokenParameter": { + "name": "$skiptoken", + "description": "An opaque string that the resource provider uses to skip over previously-returned results. This is used when a previous list operation call returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "string" + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSiteCreate.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSiteCreate.json new file mode 100644 index 0000000000000..e876ceaad0e81 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSiteCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "edgeSiteName": "es1", + "parameters": { + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "globalCommunicationsSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "es1", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/edgeSites/es1", + "type": "Microsoft.Orbital/edgeSites", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "globalCommunicationsSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon" + } + } + } + }, + "201": { + "body": { + "name": "es1", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/edgeSites/es1", + "type": "Microsoft.Orbital/edgeSites", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "globalCommunicationsSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon" + } + } + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSiteDelete.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSiteDelete.json new file mode 100644 index 0000000000000..12efedc822412 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSiteDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "edgeSiteName": "oep1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSiteGet.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSiteGet.json new file mode 100644 index 0000000000000..ea1cf97ab0b78 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSiteGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "edgeSiteName": "es1" + }, + "responses": { + "200": { + "body": { + "name": "es1", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/edgeSites/es1", + "type": "Microsoft.Orbital/edgeSites", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "globalCommunicationsSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon" + } + } + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSiteUpdateTag.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSiteUpdateTag.json new file mode 100644 index 0000000000000..234a0733dc0d5 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSiteUpdateTag.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "edgeSiteName": "oep1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "oep1", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/edgeSites/oep1", + "type": "Microsoft.Orbital/edgeSites", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "globalCommunicationsSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon" + } + } + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSitesByResourceGroupList.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSitesByResourceGroupList.json new file mode 100644 index 0000000000000..c0717c7c7ad7e --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSitesByResourceGroupList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "$skipToken": "opaqueString" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "oep1", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/edgeSites/oep1", + "type": "Microsoft.Orbital/edgeSites", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "globalCommunicationsSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon" + } + } + } + ], + "nextLink": "https://example.com" + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSitesBySubscriptionList.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSitesBySubscriptionList.json new file mode 100644 index 0000000000000..a5c32cab64770 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/EdgeSitesBySubscriptionList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "$skipToken": "opaqueString" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "oep1", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/edgeSites/oep1", + "type": "Microsoft.Orbital/edgeSites", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "globalCommunicationsSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon" + } + } + } + ], + "nextLink": "https://example.com" + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GlobalCommunicationsSiteGet.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GlobalCommunicationsSiteGet.json new file mode 100644 index 0000000000000..3be10d9e758e3 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GlobalCommunicationsSiteGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "globalCommunicationsSiteName": "contoso-Vernon" + }, + "responses": { + "200": { + "body": { + "name": "contoso-Vernon", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon", + "type": "Microsoft.Orbital/globalCommunicationsSites", + "properties": { + "locationData": { + "city": "Vernon", + "district": "Texas", + "country": "United States of America", + "extra": "Zip code: 76384", + "closestAzureRegion": "southcentralus" + }, + "globalCommunicationsSiteType": "GroundStation", + "partnerRouters": [ + { + "name": "contoso-pr1" + }, + { + "name": "contoso-pr2" + } + ], + "partnerSiteBandwidth": 100000000 + } + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GlobalCommunicationsSitesBySubscriptionList.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GlobalCommunicationsSitesBySubscriptionList.json new file mode 100644 index 0000000000000..a5b0597c54193 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GlobalCommunicationsSitesBySubscriptionList.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "contoso-Vernon", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon", + "type": "Microsoft.Orbital/globalCommunicationsSites", + "properties": { + "locationData": { + "city": "Vernon", + "district": "Texas", + "country": "United States of America", + "extra": "Zip code: 76384", + "closestAzureRegion": "southcentralus" + }, + "globalCommunicationsSiteType": "GroundStation", + "partnerRouters": [ + { + "name": "contoso-pr1" + }, + { + "name": "contoso-pr2" + } + ], + "partnerSiteBandwidth": 100000000 + } + } + ], + "nextLink": "https://example.com" + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationCreate.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationCreate.json new file mode 100644 index 0000000000000..a85e816b979a2 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationCreate.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "groundStationName": "westus_gs1", + "parameters": { + "location": "westus", + "properties": { + "city": "redmond", + "providerName": "Microsoft", + "capabilities": [ + "Communication" + ], + "longitudeDegrees": 47.674, + "latitudeDegrees": -122.122, + "altitudeMeters": 1500.83, + "globalCommunicationsSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon" + } + }, + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "westus_gs1", + "location": "westus", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/groundStations/westus_gs1", + "properties": { + "city": "redmond", + "providerName": "Microsoft", + "capabilities": [ + "Communication" + ], + "longitudeDegrees": 47.674, + "latitudeDegrees": -122.122, + "altitudeMeters": 1500.83, + "globalCommunicationsSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon" + } + }, + "type": "Microsoft.Orbital/groundStations", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "201": { + "body": { + "name": "westus_gs1", + "location": "westus", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/groundStations/westus_gs1", + "properties": { + "city": "redmond", + "providerName": "Microsoft", + "capabilities": [ + "Communication" + ], + "longitudeDegrees": 47.674, + "latitudeDegrees": -122.122, + "altitudeMeters": 1500.83, + "globalCommunicationsSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon" + } + }, + "type": "Microsoft.Orbital/groundStations", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationDelete.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationDelete.json new file mode 100644 index 0000000000000..edab4669d3259 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "groundStationName": "westus_gs1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationGet.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationGet.json new file mode 100644 index 0000000000000..2c1d0cfe9cfa4 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "groundStationName": "westus_gs1" + }, + "responses": { + "200": { + "body": { + "name": "westus_gs1", + "location": "westus", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/groundStations/westus_gs1", + "properties": { + "city": "redmond", + "providerName": "Microsoft", + "capabilities": [ + "Communication" + ], + "longitudeDegrees": 47.674, + "latitudeDegrees": -122.122, + "altitudeMeters": 1500.83, + "globalCommunicationsSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon" + } + }, + "type": "Microsoft.Orbital/groundStations", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationUpdateTags.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationUpdateTags.json new file mode 100644 index 0000000000000..839ba7d88a34f --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationUpdateTags.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "groundStationName": "westus_gs1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "westus_gs1", + "location": "westus", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/groundStations/westus_gs1", + "properties": { + "city": "redmond", + "providerName": "Microsoft", + "capabilities": [ + "Communication" + ], + "longitudeDegrees": 47.674, + "latitudeDegrees": -122.122, + "altitudeMeters": 1500.83, + "globalCommunicationsSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon" + } + }, + "type": "Microsoft.Orbital/groundStations", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationsBySubscription.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationsBySubscription.json new file mode 100644 index 0000000000000..4f1869a86ead7 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationsBySubscription.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "$skipToken": "opaqueString" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "westus_gs1", + "location": "westus", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/groundStations/westus_gs1", + "properties": { + "city": "redmond", + "providerName": "Microsoft", + "capabilities": [ + "Communication" + ], + "longitudeDegrees": 47.674, + "latitudeDegrees": -122.122, + "altitudeMeters": 1500.83, + "globalCommunicationsSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon" + } + }, + "type": "Microsoft.Orbital/groundStations", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationsList.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationsList.json new file mode 100644 index 0000000000000..2de591e9a6ad9 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/GroundStationsList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "$skipToken": "opaqueString" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "westus_gs1", + "location": "westus", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/groundStations/westus_gs1", + "properties": { + "city": "redmond", + "providerName": "Microsoft", + "capabilities": [ + "Communication" + ], + "longitudeDegrees": 47.674, + "latitudeDegrees": -122.122, + "altitudeMeters": 1500.83, + "globalCommunicationsSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/providers/Microsoft.Orbital/globalCommunicationsSites/contoso-Vernon" + } + }, + "type": "Microsoft.Orbital/groundStations", + "tags": { + "key1": "value1", + "key2": "value2" + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionCreate.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionCreate.json new file mode 100644 index 0000000000000..42775ef9ba4d7 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionCreate.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "l2ConnectionName": "connection1", + "parameters": { + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "edgeSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/edgeSites/es1" + }, + "edgeSitePartnerRouter": { + "name": "customerName-SiteName-01" + }, + "groundStation": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/groundStations/gs1" + }, + "groundStationPartnerRouter": { + "name": "customerName-SiteName-01" + }, + "vlanId": 200 + } + } + }, + "responses": { + "200": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Microsoft.Orbital/operationResults/4e2ffff7-b331-4fcb-ab11-b5fa49368188?api-version=2022-11-01" + }, + "body": { + "name": "connection1", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/l2Connections/connection1", + "type": "Microsoft.Orbital/l2Connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "circuitId": "12345", + "edgeSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/edgeSites/es1" + }, + "edgeSitePartnerRouter": { + "name": "customerName-SiteName-01" + }, + "groundStation": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/groundStations/gs1" + }, + "groundStationPartnerRouter": { + "name": "customerName-SiteName-01" + }, + "vlanId": 200 + } + } + }, + "201": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/Microsoft.Orbital/operationResults/4e2ffff7-b331-4fcb-ab11-b5fa49368188?api-version=2022-11-01" + }, + "body": { + "name": "connection1", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/l2Connections/connection1", + "type": "Microsoft.Orbital/l2Connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "circuitId": "12345", + "edgeSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/edgeSites/es1" + }, + "edgeSitePartnerRouter": { + "name": "customerName-SiteName-01" + }, + "groundStation": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/groundStations/gs1" + }, + "groundStationPartnerRouter": { + "name": "customerName-SiteName-01" + }, + "vlanId": 200 + } + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionDelete.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionDelete.json new file mode 100644 index 0000000000000..8c95ec506c63e --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "l2ConnectionName": "connection1" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Microsoft.Orbital/operationResults/4e2ffff7-b331-4fcb-ab11-b5fa49368188?api-version=2022-11-01" + } + }, + "204": {} + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionGet.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionGet.json new file mode 100644 index 0000000000000..3bfc7d263c0b5 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "l2ConnectionName": "connection1" + }, + "responses": { + "200": { + "body": { + "name": "connection1", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/l2Connections/connection1", + "type": "Microsoft.Orbital/l2Connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "circuitId": "12345", + "edgeSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/edgeSites/es1" + }, + "edgeSitePartnerRouter": { + "name": "customerName-SiteName-01" + }, + "groundStation": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/groundStations/gs1" + }, + "groundStationPartnerRouter": { + "name": "customerName-SiteName-01" + }, + "vlanId": 200 + } + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionUpdateTag.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionUpdateTag.json new file mode 100644 index 0000000000000..cd5065d8145c5 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionUpdateTag.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "l2ConnectionName": "connection1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/Microsoft.Orbital/operationResults/4e2ffff7-b331-4fcb-ab11-b5fa49368188?api-version=2022-11-01" + } + }, + "200": { + "body": { + "name": "connection1", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/l2Connections/connection1", + "type": "Microsoft.Orbital/l2Connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "circuitId": "12345", + "edgeSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/edgeSites/oep1" + }, + "edgeSitePartnerRouter": { + "name": "customerName-SiteName-01" + }, + "groundStation": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/groundStations/oep1" + }, + "groundStationPartnerRouter": { + "name": "customerName-SiteName-01" + }, + "vlanId": 200 + } + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionsByEdgeSiteNameList.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionsByEdgeSiteNameList.json new file mode 100644 index 0000000000000..f471b1ee611e2 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionsByEdgeSiteNameList.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "edgeSiteName": "oep1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/l2Connections/connection1" + } + ], + "nextLink": "https://example.com" + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionsByGroundStationNameList.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionsByGroundStationNameList.json new file mode 100644 index 0000000000000..68496dde92345 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionsByGroundStationNameList.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "groundStationName": "gs1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/l2Connections/connection1" + } + ], + "nextLink": "https://example.com" + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionsByResourceGroupList.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionsByResourceGroupList.json new file mode 100644 index 0000000000000..77dea3f22a881 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionsByResourceGroupList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "resourceGroupName": "rg1", + "$skipToken": "opaqueString" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "connection1", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/l2Connections/connection1", + "type": "Microsoft.Orbital/l2Connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "circuitId": "12345", + "edgeSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/edgeSites/oep1" + }, + "edgeSitePartnerRouter": { + "name": "customerName-SiteName-01" + }, + "groundStation": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/groundStations/oep1" + }, + "groundStationPartnerRouter": { + "name": "customerName-SiteName-01" + }, + "vlanId": 200 + } + } + ], + "nextLink": "https://example.com" + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionsBySubscriptionList.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionsBySubscriptionList.json new file mode 100644 index 0000000000000..4d2df9e30e888 --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/L2ConnectionsBySubscriptionList.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-03-01", + "subscriptionId": "c1be1141-a7c9-4aac-9608-3c2e2f1152c3", + "$skipToken": "opaqueString" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "connection1", + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/l2Connections/connection1", + "type": "Microsoft.Orbital/l2Connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "circuitId": "12345", + "edgeSite": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/edgeSites/oep1" + }, + "edgeSitePartnerRouter": { + "name": "customerName-SiteName-01" + }, + "groundStation": { + "id": "/subscriptions/c1be1141-a7c9-4aac-9608-3c2e2f1152c3/resourceGroups/rg1/providers/Microsoft.Orbital/groundStations/oep1" + }, + "groundStationPartnerRouter": { + "name": "customerName-SiteName-01" + }, + "vlanId": 200 + } + } + ], + "nextLink": "https://example.com" + } + } + } +} diff --git a/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/OperationsList.json b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/OperationsList.json new file mode 100644 index 0000000000000..49e91c73ab60c --- /dev/null +++ b/specification/orbital/resource-manager/Microsoft.Orbital/aodg/stable/2024-03-01/examples/OperationsList.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Orbital/l2Connections/read", + "isDataAction": false, + "display": { + "provider": "Orbital Resource Provider", + "resource": "L2 Connections", + "operation": "Read L2 Connection", + "description": "Read any L2 Connection" + } + } + ] + } + } + } +} diff --git a/specification/orbital/resource-manager/readme.md b/specification/orbital/resource-manager/readme.md index 41651639fae94..9d06f36190eb4 100644 --- a/specification/orbital/resource-manager/readme.md +++ b/specification/orbital/resource-manager/readme.md @@ -29,15 +29,6 @@ openapi-type: arm tag: package-2022-11-01 ``` -### Tag: package-2024-03-01-preview - -These settings apply only when `--tag=package-2024-03-01-preview` is specified on the command line. - -```yaml $(tag) == 'package-2024-03-01-preview' -input-file: - - Microsoft.Orbital/aodg/preview/2024-03-01-preview/aodg.json -``` - ### Tag: package-2022-11-01 These settings apply only when `--tag=package-2022-11-01` is specified on the command line. diff --git a/specification/purview/Azure.Analytics.Purview.DataMap/models.tsp b/specification/purview/Azure.Analytics.Purview.DataMap/models.tsp index 30de3c98afe2f..84bcfcdb3ca16 100644 --- a/specification/purview/Azure.Analytics.Purview.DataMap/models.tsp +++ b/specification/purview/Azure.Analytics.Purview.DataMap/models.tsp @@ -552,6 +552,12 @@ model BulkImportResult { successImportInfoList?: ImportInfo[]; } +@doc("Business metadata to send to the service") +model BusinessMetadataOptions { + @doc("InputStream of file") + file: bytes; +} + @doc("ImportInfo") model ImportInfo { @doc("childObjectName") diff --git a/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp b/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp index bc4f05fe69c84..8806f8361ac6c 100644 --- a/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp +++ b/specification/purview/Azure.Analytics.Purview.DataMap/routes.tsp @@ -765,10 +765,7 @@ default is false. @route("/atlas/v2/entity/businessmetadata/import") @post importBusinessMetadata is AtlasImportOperation< - { - @doc("InputStream of file") - file: bytes; - }, + BusinessMetadataOptions, BulkImportResult, MultipartFormDataRequestHeadersTraits >; diff --git a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/stable/2023-09-01/purviewdatamap.json b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/stable/2023-09-01/purviewdatamap.json index 800ef24b49213..65fbb4888b622 100644 --- a/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/stable/2023-09-01/purviewdatamap.json +++ b/specification/purview/data-plane/Azure.Analytics.Purview.DataMap/stable/2023-09-01/purviewdatamap.json @@ -435,11 +435,7 @@ ], "parameters": [ { - "name": "file", - "in": "formData", - "description": "InputStream of file", - "required": true, - "type": "file" + "$ref": "#/parameters/BusinessMetadataOptions" } ], "responses": { @@ -6821,6 +6817,20 @@ } } }, + "BusinessMetadataOptions": { + "type": "object", + "description": "Business metadata to send to the service", + "properties": { + "file": { + "type": "string", + "format": "byte", + "description": "InputStream of file" + } + }, + "required": [ + "file" + ] + }, "CardinalityValue": { "type": "string", "description": "Cardinality", @@ -8225,6 +8235,14 @@ "minLength": 1, "x-ms-parameter-location": "method", "x-ms-client-name": "apiVersion" + }, + "BusinessMetadataOptions": { + "name": "file", + "in": "formData", + "description": "InputStream of file", + "required": true, + "type": "file", + "x-ms-parameter-location": "method" } } } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/AlertRules.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/AlertRules.json new file mode 100644 index 0000000000000..d3fcd99d1fb2a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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-01-01-preview/AutomationRules.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/AutomationRules.json new file mode 100644 index 0000000000000..8a93c7789a71c --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/AutomationRules.json @@ -0,0 +1,1495 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2024-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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" + ], + "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" + } + ] + } + }, + "AutomationRulePropertyArrayConditionSupportedArrayType": { + "enum": [ + "CustomDetails", + "CustomDetailValues" + ], + "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" + } + ] + } + }, + "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", + "description": "Incident ARM id." + }, + "tenantId": { + "format": "uuid", + "type": "string", + "description": "The tenant id of the playbook resource." + }, + "logicAppsResourceId": { + "type": "string", + "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" + } + } + }, + "PlaybookActionProperties": { + "type": "object", + "required": [ + "logicAppResourceId" + ], + "properties": { + "logicAppResourceId": { + "description": "The resource id of the playbook resource.", + "type": "string" + }, + "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-01-01-preview/BillingStatistics.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/BillingStatistics.json new file mode 100644 index 0000000000000..139abced40694 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/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/v3/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-01-01-preview/Bookmarks.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Bookmarks.json new file mode 100644 index 0000000000000..e803ffc5c1c40 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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-01-01-preview/ContentPackages.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/ContentPackages.json new file mode 100644 index 0000000000000..590e106d99eb3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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-01-01-preview/ContentProductPackages.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/ContentProductPackages.json new file mode 100644 index 0000000000000..8ed81b7de3b00 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/ContentProductPackages.json @@ -0,0 +1,232 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2024-01-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/v3/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": "../../../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/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/v3/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": "../../../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-01-01-preview/ContentProductTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/ContentProductTemplates.json new file mode 100644 index 0000000000000..55508468082c5 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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": "../../../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-01-01-preview/ContentTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/ContentTemplates.json new file mode 100644 index 0000000000000..69c72886939f3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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-01-01-preview/Enrichment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Enrichment.json new file mode 100644 index 0000000000000..8135cbb8c196e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Enrichment.json @@ -0,0 +1,381 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2024-01-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.SecurityInsights/enrichment/ip/geodata/": { + "get": { + "x-ms-examples": { + "Get geodata for a single IP address": { + "$ref": "./examples/enrichment/GetGeodataByIp.json" + } + }, + "tags": [ + "Enrichment" + ], + "description": "Get geodata for a single IP address", + "operationId": "IPGeodata_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/EnrichmentIpAddress" + } + ], + "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.SecurityInsights/enrichment/domain/whois/": { + "get": { + "x-ms-examples": { + "Get whois information for a single domain name": { + "$ref": "./examples/enrichment/GetWhoisByDomainName.json" + } + }, + "tags": [ + "Enrichment" + ], + "description": "Get whois information for a single domain name", + "operationId": "DomainWhois_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/EnrichmentDomain" + } + ], + "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": { + "EnrichmentIpAddress": { + "description": "IP address (v4 or v6) to be enriched", + "in": "query", + "name": "ipAddress", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "EnrichmentDomain": { + "description": "Domain name to be enriched", + "in": "query", + "name": "domain", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "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" + }, + "cityCf": { + "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" + }, + "continent": { + "description": "The continent this IP address is located on", + "type": "string" + }, + "country": { + "description": "The county this IP address is located in", + "type": "string" + }, + "countryCf": { + "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" + }, + "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" + }, + "stateCf": { + "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" + }, + "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-01-01-preview/EnrichmentWithWorkspace.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/EnrichmentWithWorkspace.json new file mode 100644 index 0000000000000..96ceb050195de --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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-01-01-preview/Entities.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Entities.json new file mode 100644 index 0000000000000..856755f2bac05 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Entities.json @@ -0,0 +1,1556 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2024-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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" + } + } + } + } + }, + "/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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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-01-01-preview/EntityQueries.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/EntityQueries.json new file mode 100644 index 0000000000000..2e579a75300d2 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/EntityQueries.json @@ -0,0 +1,507 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2024-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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" + }, + "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-01-01-preview/EntityQueryTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/EntityQueryTemplates.json new file mode 100644 index 0000000000000..12d2ee3af668a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/EntityQueryTemplates.json @@ -0,0 +1,304 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2024-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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" + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/FileImports.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/FileImports.json new file mode 100644 index 0000000000000..7758bac25baf7 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/FileImports.json @@ -0,0 +1,564 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2024-01-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/v3/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": "../../../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/2.0/types.json#/definitions/CloudError" + } + } + }, + "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/v3/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": "../../../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/2.0/types.json#/definitions/CloudError" + } + } + } + }, + "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/v3/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": "../../../common/2.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/FileImportId" + }, + { + "$ref": "#/parameters/FileImport" + } + ], + "responses": { + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/FileImport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/2.0/types.json#/definitions/CloudError" + } + } + } + }, + "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/v3/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": "../../../common/2.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/FileImportId" + } + ], + "responses": { + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/FileImport" + } + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/2.0/types.json#/definitions/CloudError" + } + } + }, + "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/v3/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-01-01-preview/Hunts.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Hunts.json new file mode 100644 index 0000000000000..f039b507e5324 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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-01-01-preview/Incidents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Incidents.json new file mode 100644 index 0000000000000..b666f8305d7d7 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Incidents.json @@ -0,0 +1,1658 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2024-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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" + }, + "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-01-01-preview/Metadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Metadata.json new file mode 100644 index 0000000000000..5c38acba57c93 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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-01-01-preview/OfficeConsents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/OfficeConsents.json new file mode 100644 index 0000000000000..8d2634d8da214 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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-01-01-preview/OnboardingStates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/OnboardingStates.json new file mode 100644 index 0000000000000..b6ccc8099887a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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-01-01-preview/Recommendations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Recommendations.json new file mode 100644 index 0000000000000..0dfe62a9645da --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Recommendations.json @@ -0,0 +1,441 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2024-01-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/v3/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": "../../../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" + } + } + } + } + }, + "/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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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" + } + }, + "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-01-01-preview/SecurityMLAnalyticsSettings.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/SecurityMLAnalyticsSettings.json new file mode 100644 index 0000000000000..7657674356e48 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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-01-01-preview/Settings.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Settings.json new file mode 100644 index 0000000000000..4203509083269 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Settings.json @@ -0,0 +1,423 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2024-01-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/v3/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": "../../../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" + } + } + } + } + }, + "/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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../common/2.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/SettingsName" + }, + { + "$ref": "#/parameters/Settings" + } + ], + "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" + } + } + } + } + } + }, + "definitions": { + "SettingList": { + "description": "List of all the settings.", + "properties": { + "value": { + "description": "Array of settings.", + "items": { + "$ref": "#/definitions/Settings" + }, + "type": "array" + } + }, + "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" + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/SourceControls.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/SourceControls.json new file mode 100644 index 0000000000000..30168e005a53d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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-01-01-preview/ThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/ThreatIntelligence.json new file mode 100644 index 0000000000000..85cb5cd698bf4 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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": "../../../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/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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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-01-01-preview/ThreatIntelligenceCount.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/ThreatIntelligenceCount.json new file mode 100644 index 0000000000000..5de53e6cc0803 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../common/2.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/TiType" + }, + { + "$ref": "#/parameters/Query" + } + ], + "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" + ] + }, + "Query": { + "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": { + "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-01-01-preview/ThreatIntelligenceQuery.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/ThreatIntelligenceQuery.json new file mode 100644 index 0000000000000..31fdf4a00f946 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/ThreatIntelligenceQuery.json @@ -0,0 +1,603 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2024-01-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/v3/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": "../../../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/v3/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": "#/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": "#/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" + }, + "UserInfo": { + "description": "Data about a user or client application.", + "properties": { + "objectId": { + "description": "The user's object ID.", + "readOnly": true, + "format": "uuid", + "type": "string" + }, + "email": { + "description": "The user's email address.", + "type": "string" + }, + "name": { + "description": "The user's name.", + "type": "string" + } + }, + "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-01-01-preview/TriggeredAnalyticsRuleRuns.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/TriggeredAnalyticsRuleRuns.json new file mode 100644 index 0000000000000..1911226ceab39 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/TriggeredAnalyticsRuleRuns.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-01-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/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/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/v3/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/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/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/v3/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": "../../../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/2.0/types.json#/definitions/CloudError" + } + } + }, + "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", + "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-01-01-preview/Watchlists.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Watchlists.json new file mode 100644 index 0000000000000..b6d81b69febb8 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/Watchlists.json @@ -0,0 +1,721 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2024-01-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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../common/2.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/WatchlistAlias" + } + ], + "responses": { + "200": { + "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" + } + } + }, + "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.": { + "$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/v3/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": "../../../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/2.0/types.json#/definitions/CloudError" + } + } + } + } + }, + "/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/v3/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": "../../../common/2.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "../../../common/2.0/types.json#/parameters/ODataSkipToken" + }, + { + "$ref": "#/parameters/WatchlistAlias" + } + ], + "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/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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" + } + }, + "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", + "additionalProperties": {} + }, + "entityMapping": { + "description": "key-value pairs for a watchlist item entity mapping", + "type": "object", + "additionalProperties": {} + } + }, + "required": [ + "itemsKeyValue" + ], + "type": "object" + } + }, + "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-01-01-preview/WorkspaceManagerAssignments.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/WorkspaceManagerAssignments.json new file mode 100644 index 0000000000000..c3e8faa2480ea --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "WorkspaceManagerAssignment": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/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-01-01-preview/WorkspaceManagerConfigurations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/WorkspaceManagerConfigurations.json new file mode 100644 index 0000000000000..b5462a6bcc89a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "WorkspaceManagerConfiguration": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/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-01-01-preview/WorkspaceManagerGroups.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/WorkspaceManagerGroups.json new file mode 100644 index 0000000000000..3c10602987968 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "WorkspaceManagerGroup": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/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-01-01-preview/WorkspaceManagerMembers.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/WorkspaceManagerMembers.json new file mode 100644 index 0000000000000..75c42daf3e65e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/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/v3/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": "../../../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/v3/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/v3/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-01-01-preview/common/AlertTypes.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/common/AlertTypes.json new file mode 100644 index 0000000000000..2130ef95de6ca --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/common/AlertTypes.json @@ -0,0 +1,81 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-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-01-01-preview/common/ContentCommonTypes.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/common/ContentCommonTypes.json new file mode 100644 index 0000000000000..ff684fff7d336 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/common/ContentCommonTypes.json @@ -0,0 +1,646 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-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" + ], + "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" + } + ] + } + }, + "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-01-01-preview/common/EntityTypes.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/common/EntityTypes.json new file mode 100644 index 0000000000000..ea3d9a3d17f8d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/common/EntityTypes.json @@ -0,0 +1,2550 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-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/v3/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-01-01-preview/common/IncidentTypes.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/common/IncidentTypes.json new file mode 100644 index 0000000000000..3e1fead50fba1 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/common/IncidentTypes.json @@ -0,0 +1,246 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-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-01-01-preview/common/RelationTypes.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/common/RelationTypes.json new file mode 100644 index 0000000000000..a926dcc5ec7a7 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/common/RelationTypes.json @@ -0,0 +1,95 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-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", + "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-01-01-preview/common/ThreatIntelligenceTypes.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/common/ThreatIntelligenceTypes.json new file mode 100644 index 0000000000000..493203f8af0aa --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/common/ThreatIntelligenceTypes.json @@ -0,0 +1,48 @@ +{ + "swagger": "2.0", + "info": { + "version": "2024-01-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-01-01-preview/dataConnectorDefinitions.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/dataConnectorDefinitions.json new file mode 100644 index 0000000000000..b15e11c858206 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/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/GetCustomizableDataConnectoeDefinitionById.json" + } + }, + "tags": [ + "ConnectorDefinitions" + ], + "description": "Gets a data connector definition.", + "operationId": "DataConnectorDefinitions_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": "../../../common/2.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/dataConnectorDefinitionName" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/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/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/dataConnectorDefinitionName" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/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/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/2.0/types.json#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/dataConnectorDefinitionName" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/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\nFoe 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-01-01-preview/dataConnectors.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/dataConnectors.json new file mode 100644 index 0000000000000..18f864ebaa06e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/dataConnectors.json @@ -0,0 +1,4052 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2024-01-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/v3/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": "../../../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" + } + }, + "tags": [ + "Data Connectors" + ], + "description": "Gets a data connector.", + "operationId": "DataConnectors_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": "../../../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" + } + }, + "tags": [ + "Data Connectors" + ], + "description": "Creates or updates the data connector.", + "operationId": "DataConnectors_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/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": "../../../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" + } + }, + "tags": [ + "Data Connectors" + ], + "description": "Delete the data connector.", + "operationId": "DataConnectors_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/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": "../../../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/v3/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": "../../../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/v3/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": "../../../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" + } + }, + "tags": [ + "Check Data Connector Requirements" + ], + "description": "Get requirements state for a data connector type.", + "operationId": "DataConnectorsCheckRequirements_Post", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/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": "../../../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" + }, + "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" + } + }, + "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" + } + }, + "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." + }, + "clientSecret": { + "type": "string", + "description": "The Application (client) secret that the OAuth provider assigned to your app." + }, + "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", + "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." + }, + "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 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.", + "type": "string" + }, + "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 a 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": "Th 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" + ], + "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" + } + ] + } + }, + "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" + ] + }, + "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": { + "allOf": [ + { + "$ref": "#/definitions/GraphQueries" + } + ] + }, + "type": "array" + }, + "sampleQueries": { + "description": "The sample queries for the connector", + "x-ms-identifiers": [], + "items": { + "allOf": [ + { + "$ref": "#/definitions/SampleQueries" + } + ] + }, + "type": "array" + }, + "dataTypes": { + "description": "Data types to check for last data received", + "x-ms-identifiers": [], + "items": { + "allOf": [ + { + "$ref": "#/definitions/LastDataReceivedDataType" + } + ] + }, + "type": "array" + }, + "connectivityCriteria": { + "description": "Define the way the connector check connectivity", + "x-ms-identifiers": [], + "items": { + "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": { + "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." + }, + "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": { + "allOf": [ + { + "$ref": "#/definitions/ResourceProvider" + } + ] + }, + "type": "array" + }, + "customs": { + "description": "Customs permissions required for the connector", + "x-ms-identifiers": [], + "items": { + "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": { + "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-01-01-preview/examples/actions/CreateActionOfAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/actions/CreateActionOfAlertRule.json new file mode 100644 index 0000000000000..a6a514194728f --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/actions/CreateActionOfAlertRule.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/actions/DeleteActionOfAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/actions/DeleteActionOfAlertRule.json new file mode 100644 index 0000000000000..a2cbbe0222355 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/actions/DeleteActionOfAlertRule.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/actions/GetActionOfAlertRuleById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/actions/GetActionOfAlertRuleById.json new file mode 100644 index 0000000000000..5a5027e215464 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/actions/GetActionOfAlertRuleById.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/actions/GetAllActionsByAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/actions/GetAllActionsByAlertRule.json new file mode 100644 index 0000000000000..6c97261e580f4 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/actions/GetAllActionsByAlertRule.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json new file mode 100644 index 0000000000000..43c3c3e7d1e38 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json new file mode 100644 index 0000000000000..8c3fff208334d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json @@ -0,0 +1,238 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/alertRules/CreateFusionAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/CreateFusionAlertRule.json new file mode 100644 index 0000000000000..bafa6adc10f6c --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/CreateFusionAlertRule.json @@ -0,0 +1,845 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/alertRules/CreateFusionAlertRuleWithFusionScenarioExclusion.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/CreateFusionAlertRuleWithFusionScenarioExclusion.json new file mode 100644 index 0000000000000..e5abc0d5c11cd --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/CreateFusionAlertRuleWithFusionScenarioExclusion.json @@ -0,0 +1,851 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json new file mode 100644 index 0000000000000..0f9d225033a04 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/alertRules/CreateNrtAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/CreateNrtAlertRule.json new file mode 100644 index 0000000000000..b350441e92a01 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/CreateNrtAlertRule.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json new file mode 100644 index 0000000000000..dc87b57200afd --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json @@ -0,0 +1,270 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/alertRules/DeleteAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/DeleteAlertRule.json new file mode 100644 index 0000000000000..7175b2ed81d04 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/DeleteAlertRule.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/alertRules/GetAllAlertRules.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/GetAllAlertRules.json new file mode 100644 index 0000000000000..eab8969757c1c --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/GetAllAlertRules.json @@ -0,0 +1,412 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/alertRules/GetFusionAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/GetFusionAlertRule.json new file mode 100644 index 0000000000000..c3961f5d3e82b --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/GetFusionAlertRule.json @@ -0,0 +1,310 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json new file mode 100644 index 0000000000000..18d0ae0b04d65 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/alertRules/GetNrtAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/GetNrtAlertRule.json new file mode 100644 index 0000000000000..1da1127f62f70 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/GetNrtAlertRule.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/alertRules/GetScheduledAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/GetScheduledAlertRule.json new file mode 100644 index 0000000000000..5e0b059c38c21 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/alertRules/GetScheduledAlertRule.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/automationRules/AutomationRules_CreateOrUpdate.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/automationRules/AutomationRules_CreateOrUpdate.json new file mode 100644 index 0000000000000..590ea52b3efaf --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/automationRules/AutomationRules_CreateOrUpdate.json @@ -0,0 +1,171 @@ +{ + "parameters": { + "api-version": "2024-01-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": "Property", + "conditionProperties": { + "propertyName": "IncidentRelatedAnalyticRuleIds", + "operator": "Contains", + "propertyValues": [ + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7", + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/8deb8303-e94d-46ff-96e0-5fd94b33df1a" + ] + } + } + ] + }, + "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": "Property", + "conditionProperties": { + "propertyName": "IncidentRelatedAnalyticRuleIds", + "operator": "Contains", + "propertyValues": [ + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7", + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/8deb8303-e94d-46ff-96e0-5fd94b33df1a" + ] + } + } + ] + }, + "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": "Property", + "conditionProperties": { + "propertyName": "IncidentRelatedAnalyticRuleIds", + "operator": "Contains", + "propertyValues": [ + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7", + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/8deb8303-e94d-46ff-96e0-5fd94b33df1a" + ] + } + } + ] + }, + "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-01-01-preview/examples/automationRules/AutomationRules_Delete.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/automationRules/AutomationRules_Delete.json new file mode 100644 index 0000000000000..b550b6e7cc7d3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/automationRules/AutomationRules_Delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/automationRules/AutomationRules_Get.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/automationRules/AutomationRules_Get.json new file mode 100644 index 0000000000000..d4f9cb33ffa5e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/automationRules/AutomationRules_Get.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2024-01-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": "Property", + "conditionProperties": { + "propertyName": "IncidentRelatedAnalyticRuleIds", + "operator": "Contains", + "propertyValues": [ + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7", + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/8deb8303-e94d-46ff-96e0-5fd94b33df1a" + ] + } + } + ] + }, + "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-01-01-preview/examples/automationRules/AutomationRules_List.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/automationRules/AutomationRules_List.json new file mode 100644 index 0000000000000..ed46708b01225 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/automationRules/AutomationRules_List.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2024-01-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": "Property", + "conditionProperties": { + "propertyName": "IncidentRelatedAnalyticRuleIds", + "operator": "Contains", + "propertyValues": [ + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7", + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/8deb8303-e94d-46ff-96e0-5fd94b33df1a" + ] + } + } + ] + }, + "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-01-01-preview/examples/billingStatistics/GetAllBillingStatistics.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/billingStatistics/GetAllBillingStatistics.json new file mode 100644 index 0000000000000..0fd0b83e6e5e2 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/billingStatistics/GetAllBillingStatistics.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/billingStatistics/GetBillingStatistic.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/billingStatistics/GetBillingStatistic.json new file mode 100644 index 0000000000000..38ba5121d230c --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/billingStatistics/GetBillingStatistic.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/bookmarks/CreateBookmark.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/CreateBookmark.json new file mode 100644 index 0000000000000..e1aa1cbcaab78 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/CreateBookmark.json @@ -0,0 +1,143 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/bookmarks/DeleteBookmark.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/DeleteBookmark.json new file mode 100644 index 0000000000000..e15fc97024dd7 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/DeleteBookmark.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/bookmarks/GetBookmarkById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/GetBookmarkById.json new file mode 100644 index 0000000000000..c2be58f493bcf --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/GetBookmarkById.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/bookmarks/GetBookmarks.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/GetBookmarks.json new file mode 100644 index 0000000000000..610456b0d0059 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/GetBookmarks.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/bookmarks/expand/PostExpandBookmark.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/expand/PostExpandBookmark.json new file mode 100644 index 0000000000000..3af1902940cb5 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/expand/PostExpandBookmark.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json new file mode 100644 index 0000000000000..4a88e8b6b7ecb --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/relations/CreateBookmarkRelation.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/bookmarks/relations/DeleteBookmarkRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/relations/DeleteBookmarkRelation.json new file mode 100644 index 0000000000000..8e1bc0ab25a1a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/relations/DeleteBookmarkRelation.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json new file mode 100644 index 0000000000000..8f387125aee49 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/relations/GetAllBookmarkRelations.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json new file mode 100644 index 0000000000000..bb68e735fc6ff --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/bookmarks/relations/GetBookmarkRelationByName.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/contentPackages/GetPackageById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentPackages/GetPackageById.json new file mode 100644 index 0000000000000..25523b7933c83 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentPackages/GetPackageById.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/contentPackages/GetPackages.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentPackages/GetPackages.json new file mode 100644 index 0000000000000..12ae39e9f874f --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentPackages/GetPackages.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2024-01-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", + "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-01-01-preview/examples/contentPackages/GetProductPackageById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentPackages/GetProductPackageById.json new file mode 100644 index 0000000000000..678d08f1dbf34 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentPackages/GetProductPackageById.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2024-01-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", + "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-01-01-preview/examples/contentPackages/GetProductPackages.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentPackages/GetProductPackages.json new file mode 100644 index 0000000000000..b26963d885097 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentPackages/GetProductPackages.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "api-version": "2024-01-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/contentPackages", + "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-01-01-preview/examples/contentPackages/InstallPackage.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentPackages/InstallPackage.json new file mode 100644 index 0000000000000..810fe403cbc05 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentPackages/InstallPackage.json @@ -0,0 +1,151 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/contentPackages/UninstallPackage.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentPackages/UninstallPackage.json new file mode 100644 index 0000000000000..46bfecaccb771 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentPackages/UninstallPackage.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/contentTemplates/DeleteTemplate.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentTemplates/DeleteTemplate.json new file mode 100644 index 0000000000000..1048ddcfb6ebc --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentTemplates/DeleteTemplate.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/contentTemplates/GetProductTemplateById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentTemplates/GetProductTemplateById.json new file mode 100644 index 0000000000000..30d384b1df4c9 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentTemplates/GetProductTemplateById.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-01-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", + "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-01-01-preview/examples/contentTemplates/GetProductTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentTemplates/GetProductTemplates.json new file mode 100644 index 0000000000000..e75d97084455b --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentTemplates/GetProductTemplates.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2024-01-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", + "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", + "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-01-01-preview/examples/contentTemplates/GetTemplateById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentTemplates/GetTemplateById.json new file mode 100644 index 0000000000000..228c396185e9e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentTemplates/GetTemplateById.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/contentTemplates/GetTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentTemplates/GetTemplates.json new file mode 100644 index 0000000000000..825de36b4f589 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentTemplates/GetTemplates.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-01-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", + "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-01-01-preview/examples/contentTemplates/InstallTemplate.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentTemplates/InstallTemplate.json new file mode 100644 index 0000000000000..69266260d8bc6 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/contentTemplates/InstallTemplate.json @@ -0,0 +1,228 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectorDefinitions/CreateCustomizableDataConnectorDefinition.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectorDefinitions/CreateCustomizableDataConnectorDefinition.json new file mode 100644 index 0000000000000..190b933b76fff --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectorDefinitions/CreateCustomizableDataConnectorDefinition.json @@ -0,0 +1,258 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectorDefinitions/DeleteDataConnectorDefinitionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectorDefinitions/DeleteDataConnectorDefinitionById.json new file mode 100644 index 0000000000000..487ae3d0616f8 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectorDefinitions/DeleteDataConnectorDefinitionById.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectorDefinitions/GetCustomizableDataConnectoeDefinitionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectorDefinitions/GetCustomizableDataConnectoeDefinitionById.json new file mode 100644 index 0000000000000..ee4bb32328bd4 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectorDefinitions/GetCustomizableDataConnectoeDefinitionById.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectorDefinitions/GetDataConnectorDefinitions.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectorDefinitions/GetDataConnectorDefinitions.json new file mode 100644 index 0000000000000..701d5e6fee919 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectorDefinitions/GetDataConnectorDefinitions.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json new file mode 100644 index 0000000000000..0c40f9d4f8312 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json new file mode 100644 index 0000000000000..0c40f9d4f8312 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json new file mode 100644 index 0000000000000..0c40f9d4f8312 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json new file mode 100644 index 0000000000000..74b7101830ea0 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsDynamics365.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsDynamics365.json new file mode 100644 index 0000000000000..9b264b8b58eb3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsDynamics365.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsIoT.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsIoT.json new file mode 100644 index 0000000000000..641a112b5ae2a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsIoT.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsMdatp.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsMdatp.json new file mode 100644 index 0000000000000..5b941eca80f2e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsMdatp.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json new file mode 100644 index 0000000000000..5b941eca80f2e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftPurviewInformationProtection.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftPurviewInformationProtection.json new file mode 100644 index 0000000000000..614345cd6270a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftPurviewInformationProtection.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatIntelligence.json new file mode 100644 index 0000000000000..e9a5d789d5c00 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatIntelligence.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatProtection.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatProtection.json new file mode 100644 index 0000000000000..7d9f33accca08 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftThreatProtection.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsOffice365Project.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsOffice365Project.json new file mode 100644 index 0000000000000..e4f0fe189b3c0 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsOffice365Project.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsOfficeATP.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsOfficeATP.json new file mode 100644 index 0000000000000..1e33c2df8fc56 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsOfficeATP.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsOfficeIRM.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsOfficeIRM.json new file mode 100644 index 0000000000000..36c6fa1bfd55f --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsOfficeIRM.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsOfficePowerBI.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsOfficePowerBI.json new file mode 100644 index 0000000000000..73f5591f9754d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsOfficePowerBI.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligence.json new file mode 100644 index 0000000000000..f231381e32e87 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligence.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json new file mode 100644 index 0000000000000..5df933fb2136d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/ConnectAPIPolling.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/ConnectAPIPolling.json new file mode 100644 index 0000000000000..453c549a90b36 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/ConnectAPIPolling.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/ConnectAPIPollingV2Logs.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/ConnectAPIPollingV2Logs.json new file mode 100644 index 0000000000000..2a370f3b38e7d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/ConnectAPIPollingV2Logs.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CreateAPIPolling.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateAPIPolling.json new file mode 100644 index 0000000000000..aaf53040a2d1c --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateAPIPolling.json @@ -0,0 +1,368 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CreateDynamics365DataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateDynamics365DataConnetor.json new file mode 100644 index 0000000000000..10fc1af00f161 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateDynamics365DataConnetor.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CreateGenericUI.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateGenericUI.json new file mode 100644 index 0000000000000..177ee4311cfbb --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateGenericUI.json @@ -0,0 +1,437 @@ +{ + "parameters": { + "api-version": "2024-01-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[![Deploy To Azure](https://aka.ms/deploytoazurebutton)](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[![Deploy To Azure](https://aka.ms/deploytoazurebutton)](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[![Deploy To Azure](https://aka.ms/deploytoazurebutton)](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-01-01-preview/examples/dataConnectors/CreateGoogleCloudPlatform.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateGoogleCloudPlatform.json new file mode 100644 index 0000000000000..0ac04df4edc33 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateGoogleCloudPlatform.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CreateMicrosoftPurviewInformationProtectionDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateMicrosoftPurviewInformationProtectionDataConnetor.json new file mode 100644 index 0000000000000..d904117e125d3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateMicrosoftPurviewInformationProtectionDataConnetor.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CreateMicrosoftThreatIntelligenceDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateMicrosoftThreatIntelligenceDataConnector.json new file mode 100644 index 0000000000000..c8d414cf0af5d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateMicrosoftThreatIntelligenceDataConnector.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CreateMicrosoftThreatProtectionDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateMicrosoftThreatProtectionDataConnetor.json new file mode 100644 index 0000000000000..1fbc961d4e95d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateMicrosoftThreatProtectionDataConnetor.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CreateOffice365ProjectDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateOffice365ProjectDataConnetor.json new file mode 100644 index 0000000000000..95fef4366a51a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateOffice365ProjectDataConnetor.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json new file mode 100644 index 0000000000000..5f0e23cb580c1 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateOfficeDataConnetor.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CreateOfficePowerBIDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateOfficePowerBIDataConnector.json new file mode 100644 index 0000000000000..afa2bec811181 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateOfficePowerBIDataConnector.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json new file mode 100644 index 0000000000000..65a30b31ec5f9 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateThreatIntelligenceDataConnector.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json new file mode 100644 index 0000000000000..23d3a5e2ef254 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/CreateThreatIntelligenceTaxiiDataConnector.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/DeleteAPIPolling.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteAPIPolling.json new file mode 100644 index 0000000000000..e3a751d552f35 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteAPIPolling.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/DeleteGenericUI.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteGenericUI.json new file mode 100644 index 0000000000000..e3a751d552f35 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteGenericUI.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/DeleteGoogleCloudPlatform.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteGoogleCloudPlatform.json new file mode 100644 index 0000000000000..ceea0ccb1f7ca --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteGoogleCloudPlatform.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/DeleteMicrosoftPurviewInformationProtectionDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteMicrosoftPurviewInformationProtectionDataConnetor.json new file mode 100644 index 0000000000000..af5b3ee1d4576 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteMicrosoftPurviewInformationProtectionDataConnetor.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/DeleteMicrosoftThreatIntelligenceDataConnector.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteMicrosoftThreatIntelligenceDataConnector.json new file mode 100644 index 0000000000000..038e86a819eb8 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteMicrosoftThreatIntelligenceDataConnector.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/DeleteOffice365ProjectDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteOffice365ProjectDataConnetor.json new file mode 100644 index 0000000000000..af5b3ee1d4576 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteOffice365ProjectDataConnetor.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/DeleteOfficeDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteOfficeDataConnetor.json new file mode 100644 index 0000000000000..af5b3ee1d4576 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteOfficeDataConnetor.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/DeleteOfficePowerBIDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteOfficePowerBIDataConnetor.json new file mode 100644 index 0000000000000..af5b3ee1d4576 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DeleteOfficePowerBIDataConnetor.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/DisconnectAPIPolling.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DisconnectAPIPolling.json new file mode 100644 index 0000000000000..f64d5cc456618 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/DisconnectAPIPolling.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetAPIPolling.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetAPIPolling.json new file mode 100644 index 0000000000000..d13a1ded5cf80 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetAPIPolling.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json new file mode 100644 index 0000000000000..2b5f614337fda --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetAmazonWebServicesS3ById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetAmazonWebServicesS3ById.json new file mode 100644 index 0000000000000..9838fd4b87dbe --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetAmazonWebServicesS3ById.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetAzureActiveDirectoryById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetAzureActiveDirectoryById.json new file mode 100644 index 0000000000000..c797c40f87bd2 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetAzureActiveDirectoryById.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json new file mode 100644 index 0000000000000..f4f2720dfeb56 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetAzureSecurityCenterById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetAzureSecurityCenterById.json new file mode 100644 index 0000000000000..93d3d0dc890dd --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetAzureSecurityCenterById.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetDataConnectors.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetDataConnectors.json new file mode 100644 index 0000000000000..9de5939cbafd5 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetDataConnectors.json @@ -0,0 +1,508 @@ +{ + "parameters": { + "api-version": "2024-01-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/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[![Deploy To Azure](https://aka.ms/deploytoazurebutton)](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-01-01-preview/examples/dataConnectors/GetDynamics365DataConnectorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetDynamics365DataConnectorById.json new file mode 100644 index 0000000000000..495c71d332176 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetDynamics365DataConnectorById.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetGenericUI.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetGenericUI.json new file mode 100644 index 0000000000000..84a7ac8a32877 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetGenericUI.json @@ -0,0 +1,156 @@ +{ + "parameters": { + "api-version": "2024-01-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[![Deploy To Azure](https://aka.ms/deploytoazurebutton)](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-01-01-preview/examples/dataConnectors/GetGoogleCloudPlatformById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetGoogleCloudPlatformById.json new file mode 100644 index 0000000000000..8384395760a05 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetGoogleCloudPlatformById.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetIoTById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetIoTById.json new file mode 100644 index 0000000000000..2883ef07928bc --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetIoTById.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json new file mode 100644 index 0000000000000..ca908cea53068 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json new file mode 100644 index 0000000000000..a275044fff4c6 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetMicrosoftInsiderRiskManagementById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetMicrosoftInsiderRiskManagementById.json new file mode 100644 index 0000000000000..5d281cd1ad5eb --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetMicrosoftInsiderRiskManagementById.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetMicrosoftPurviewInformationProtectionDataConnetorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetMicrosoftPurviewInformationProtectionDataConnetorById.json new file mode 100644 index 0000000000000..fd834f8ee64ed --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetMicrosoftPurviewInformationProtectionDataConnetorById.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json new file mode 100644 index 0000000000000..847e4f070bcfa --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetMicrosoftThreatIntelligenceById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetMicrosoftThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetMicrosoftThreatProtectionById.json new file mode 100644 index 0000000000000..58301ee7d8a8a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetMicrosoftThreatProtectionById.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetOffice365AdvancedThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetOffice365AdvancedThreatProtectionById.json new file mode 100644 index 0000000000000..70ac0dbafaaa0 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetOffice365AdvancedThreatProtectionById.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetOffice365ProjectDataConnetorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetOffice365ProjectDataConnetorById.json new file mode 100644 index 0000000000000..6bb8880ac2f11 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetOffice365ProjectDataConnetorById.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetOfficeDataConnetorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetOfficeDataConnetorById.json new file mode 100644 index 0000000000000..be39e7969f603 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetOfficeDataConnetorById.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetOfficePowerBIDataConnetorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetOfficePowerBIDataConnetorById.json new file mode 100644 index 0000000000000..03d9a16af0165 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetOfficePowerBIDataConnetorById.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetRestApiPollerById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetRestApiPollerById.json new file mode 100644 index 0000000000000..bac015fcdc0a8 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetRestApiPollerById.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetThreatIntelligenceById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetThreatIntelligenceById.json new file mode 100644 index 0000000000000..07aa1b765e625 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetThreatIntelligenceById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json new file mode 100644 index 0000000000000..d7e1ca948326a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/enrichment/GetGeodataByIp.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/enrichment/GetGeodataByIp.json new file mode 100644 index 0000000000000..869cef472656e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/enrichment/GetGeodataByIp.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2024-01-01-preview", + "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a", + "resourceGroupName": "myRg", + "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-01-01-preview/examples/enrichment/GetGeodataWithWorkspaceByIp.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/enrichment/GetGeodataWithWorkspaceByIp.json new file mode 100644 index 0000000000000..ee66bc201eea1 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/enrichment/GetGeodataWithWorkspaceByIp.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/enrichment/GetWhoisByDomainName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/enrichment/GetWhoisByDomainName.json new file mode 100644 index 0000000000000..5a8fa486345e6 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/enrichment/GetWhoisByDomainName.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "api-version": "2024-01-01-preview", + "subscriptionId": "bd794837-4d29-4647-9105-6339bfdb4e6a", + "resourceGroupName": "myRg", + "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-01-01-preview/examples/enrichment/GetWhoisWithWorkspaceByDomainName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/enrichment/GetWhoisWithWorkspaceByDomainName.json new file mode 100644 index 0000000000000..cd89cdef08677 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/enrichment/GetWhoisWithWorkspaceByDomainName.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetAccountEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetAccountEntityById.json new file mode 100644 index 0000000000000..0d87823c6c84f --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetAccountEntityById.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetAzureResourceEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetAzureResourceEntityById.json new file mode 100644 index 0000000000000..c6149112ab924 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetAzureResourceEntityById.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetCloudApplicationEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetCloudApplicationEntityById.json new file mode 100644 index 0000000000000..00489c55c5874 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetCloudApplicationEntityById.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetDnsEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetDnsEntityById.json new file mode 100644 index 0000000000000..1b0c6844c58bd --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetDnsEntityById.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetEntities.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetEntities.json new file mode 100644 index 0000000000000..11778886b8ed9 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetEntities.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetFileEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetFileEntityById.json new file mode 100644 index 0000000000000..418d31747c655 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetFileEntityById.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetFileHashEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetFileHashEntityById.json new file mode 100644 index 0000000000000..d8235f4f2a61d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetFileHashEntityById.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetHostEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetHostEntityById.json new file mode 100644 index 0000000000000..5770caefbbd11 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetHostEntityById.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetIoTDeviceEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetIoTDeviceEntityById.json new file mode 100644 index 0000000000000..50ef757655f70 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetIoTDeviceEntityById.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetIpEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetIpEntityById.json new file mode 100644 index 0000000000000..1febd8ebf35a7 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetIpEntityById.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetMailClusterEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetMailClusterEntityById.json new file mode 100644 index 0000000000000..5fbfde32c0241 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetMailClusterEntityById.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetMailMessageEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetMailMessageEntityById.json new file mode 100644 index 0000000000000..490a4d45d1d32 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetMailMessageEntityById.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetMailboxEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetMailboxEntityById.json new file mode 100644 index 0000000000000..cfe7d40f31d1b --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetMailboxEntityById.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetMalwareEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetMalwareEntityById.json new file mode 100644 index 0000000000000..0722f6f3dc5cd --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetMalwareEntityById.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetProcessEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetProcessEntityById.json new file mode 100644 index 0000000000000..d5f5d9ee972b6 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetProcessEntityById.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetQueries.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetQueries.json new file mode 100644 index 0000000000000..e065a0f7e921f --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetQueries.json @@ -0,0 +1,456 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetRegistryKeyEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetRegistryKeyEntityById.json new file mode 100644 index 0000000000000..6eca4df3b3ec9 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetRegistryKeyEntityById.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetRegistryValueEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetRegistryValueEntityById.json new file mode 100644 index 0000000000000..f8421ed36cb32 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetRegistryValueEntityById.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetSecurityAlertEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetSecurityAlertEntityById.json new file mode 100644 index 0000000000000..efed55c79301d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetSecurityAlertEntityById.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetSecurityGroupEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetSecurityGroupEntityById.json new file mode 100644 index 0000000000000..c9e6e308d2916 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetSecurityGroupEntityById.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetSubmissionMailEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetSubmissionMailEntityById.json new file mode 100644 index 0000000000000..1b8b12704345a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetSubmissionMailEntityById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/GetUrlEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetUrlEntityById.json new file mode 100644 index 0000000000000..4244ed1cb8a84 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/GetUrlEntityById.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/expand/PostExpandEntity.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/expand/PostExpandEntity.json new file mode 100644 index 0000000000000..6475ec2ff531a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/expand/PostExpandEntity.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/insights/PostGetInsights.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/insights/PostGetInsights.json new file mode 100644 index 0000000000000..d2813db63343e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/insights/PostGetInsights.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/relations/GetAllEntityRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/relations/GetAllEntityRelations.json new file mode 100644 index 0000000000000..074b88db53e72 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/relations/GetAllEntityRelations.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/relations/GetEntityRelationByName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/relations/GetEntityRelationByName.json new file mode 100644 index 0000000000000..beaac013603dd --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/relations/GetEntityRelationByName.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entities/timeline/PostTimelineEntity.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/timeline/PostTimelineEntity.json new file mode 100644 index 0000000000000..792e57a52a504 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entities/timeline/PostTimelineEntity.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entityQueries/CreateEntityQueryActivity.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entityQueries/CreateEntityQueryActivity.json new file mode 100644 index 0000000000000..506b7b9d70a75 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entityQueries/CreateEntityQueryActivity.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entityQueries/DeleteEntityQuery.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entityQueries/DeleteEntityQuery.json new file mode 100644 index 0000000000000..f046be7bd6449 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entityQueries/DeleteEntityQuery.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entityQueries/GetActivityEntityQueryById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entityQueries/GetActivityEntityQueryById.json new file mode 100644 index 0000000000000..d6f2dc2290c77 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entityQueries/GetActivityEntityQueryById.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entityQueries/GetEntityQueries.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entityQueries/GetEntityQueries.json new file mode 100644 index 0000000000000..4a0dc0b9c822d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entityQueries/GetEntityQueries.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entityQueries/GetExpansionEntityQueryById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entityQueries/GetExpansionEntityQueryById.json new file mode 100644 index 0000000000000..8eb91e22bad20 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entityQueries/GetExpansionEntityQueryById.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entityQueryTemplates/GetActivityEntityQueryTemplateById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entityQueryTemplates/GetActivityEntityQueryTemplateById.json new file mode 100644 index 0000000000000..ff48c4b71458e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entityQueryTemplates/GetActivityEntityQueryTemplateById.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/entityQueryTemplates/GetEntityQueryTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entityQueryTemplates/GetEntityQueryTemplates.json new file mode 100644 index 0000000000000..e2a638d1928e0 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/entityQueryTemplates/GetEntityQueryTemplates.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/fileImports/CreateFileImport.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/fileImports/CreateFileImport.json new file mode 100644 index 0000000000000..a495ffc5164f7 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/fileImports/CreateFileImport.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2024-01-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" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/fileImports/DeleteFileImport.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/fileImports/DeleteFileImport.json new file mode 100644 index 0000000000000..e7386f213e50d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/fileImports/DeleteFileImport.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/fileImports/GetFileImportById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/fileImports/GetFileImportById.json new file mode 100644 index 0000000000000..152e373a83944 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/fileImports/GetFileImportById.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/fileImports/GetFileImports.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/fileImports/GetFileImports.json new file mode 100644 index 0000000000000..3e89e3ab08e59 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/fileImports/GetFileImports.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/hunts/CreateHunt.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/CreateHunt.json new file mode 100644 index 0000000000000..84dc994da7ca2 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/CreateHunt.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/hunts/CreateHuntComment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/CreateHuntComment.json new file mode 100644 index 0000000000000..7e500d2006ebf --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/CreateHuntComment.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/hunts/CreateHuntRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/CreateHuntRelation.json new file mode 100644 index 0000000000000..b1f739fd504cb --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/CreateHuntRelation.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/hunts/DeleteHunt.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/DeleteHunt.json new file mode 100644 index 0000000000000..5badad7191067 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/DeleteHunt.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/hunts/DeleteHuntComment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/DeleteHuntComment.json new file mode 100644 index 0000000000000..9450b293926d5 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/DeleteHuntComment.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/hunts/DeleteHuntRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/DeleteHuntRelation.json new file mode 100644 index 0000000000000..bafa565d01c98 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/DeleteHuntRelation.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/hunts/GetHuntById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/GetHuntById.json new file mode 100644 index 0000000000000..8649cbbc6abd1 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/GetHuntById.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/hunts/GetHuntCommentById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/GetHuntCommentById.json new file mode 100644 index 0000000000000..f6d27d93a71c7 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/GetHuntCommentById.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/hunts/GetHuntComments.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/GetHuntComments.json new file mode 100644 index 0000000000000..763ad0166c990 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/GetHuntComments.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/hunts/GetHuntRelationById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/GetHuntRelationById.json new file mode 100644 index 0000000000000..b6c78c3d8ef7a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/GetHuntRelationById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/hunts/GetHuntRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/GetHuntRelations.json new file mode 100644 index 0000000000000..d2e7681fcc503 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/GetHuntRelations.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/hunts/GetHunts.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/GetHunts.json new file mode 100644 index 0000000000000..2e003535f1804 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/hunts/GetHunts.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/IncidentAlerts/Incidents_ListAlerts.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentAlerts/Incidents_ListAlerts.json new file mode 100644 index 0000000000000..0683c7294475a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentAlerts/Incidents_ListAlerts.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/IncidentBookmarks/Incidents_ListBookmarks.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentBookmarks/Incidents_ListBookmarks.json new file mode 100644 index 0000000000000..05adbbae9cd63 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentBookmarks/Incidents_ListBookmarks.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/IncidentComments/IncidentComments_CreateOrUpdate.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentComments/IncidentComments_CreateOrUpdate.json new file mode 100644 index 0000000000000..d570cabf92fb0 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentComments/IncidentComments_CreateOrUpdate.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/IncidentComments/IncidentComments_Delete.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentComments/IncidentComments_Delete.json new file mode 100644 index 0000000000000..bfb89325782e2 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentComments/IncidentComments_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/IncidentComments/IncidentComments_Get.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentComments/IncidentComments_Get.json new file mode 100644 index 0000000000000..7db9c4e39bc78 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentComments/IncidentComments_Get.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/IncidentComments/IncidentComments_List.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentComments/IncidentComments_List.json new file mode 100644 index 0000000000000..465467133816e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentComments/IncidentComments_List.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/IncidentEntities/Incidents_ListEntities.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentEntities/Incidents_ListEntities.json new file mode 100644 index 0000000000000..d3ca19764c457 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentEntities/Incidents_ListEntities.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/IncidentTasks/IncidentTasks_CreateOrUpdate.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentTasks/IncidentTasks_CreateOrUpdate.json new file mode 100644 index 0000000000000..0c3c7b4dc3016 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentTasks/IncidentTasks_CreateOrUpdate.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/IncidentTasks/IncidentTasks_Delete.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentTasks/IncidentTasks_Delete.json new file mode 100644 index 0000000000000..f77ee4c5cdaca --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentTasks/IncidentTasks_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/IncidentTasks/IncidentTasks_Get.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentTasks/IncidentTasks_Get.json new file mode 100644 index 0000000000000..edf0ab1c43232 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentTasks/IncidentTasks_Get.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/IncidentTasks/IncidentTasks_List.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentTasks/IncidentTasks_List.json new file mode 100644 index 0000000000000..dba77e5ad1a23 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentTasks/IncidentTasks_List.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/IncidentTeam/Incidents_CreateTeam.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentTeam/Incidents_CreateTeam.json new file mode 100644 index 0000000000000..a8ef850d500f2 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/IncidentTeam/Incidents_CreateTeam.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/Incidents_CreateOrUpdate.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/Incidents_CreateOrUpdate.json new file mode 100644 index 0000000000000..7cce9e6c7b013 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/Incidents_CreateOrUpdate.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/Incidents_Delete.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/Incidents_Delete.json new file mode 100644 index 0000000000000..d074bfbfc73e5 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/Incidents_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/Incidents_Get.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/Incidents_Get.json new file mode 100644 index 0000000000000..35aba29aa5d57 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/Incidents_Get.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/Incidents_List.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/Incidents_List.json new file mode 100644 index 0000000000000..bc6a772731956 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/Incidents_List.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/relations/CreateIncidentRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/relations/CreateIncidentRelation.json new file mode 100644 index 0000000000000..fcc6fa85d1db6 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/relations/CreateIncidentRelation.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/relations/DeleteIncidentRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/relations/DeleteIncidentRelation.json new file mode 100644 index 0000000000000..15b53c9cc3640 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/relations/DeleteIncidentRelation.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/relations/GetAllIncidentRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/relations/GetAllIncidentRelations.json new file mode 100644 index 0000000000000..5ef58d0905f7e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/relations/GetAllIncidentRelations.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/incidents/relations/GetIncidentRelationByName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/relations/GetIncidentRelationByName.json new file mode 100644 index 0000000000000..56250963440e5 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/incidents/relations/GetIncidentRelationByName.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/manualTrigger/Entities_RunPlaybook.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/manualTrigger/Entities_RunPlaybook.json new file mode 100644 index 0000000000000..520b5cff38d44 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/manualTrigger/Entities_RunPlaybook.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/manualTrigger/Incidents_RunPlaybook.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/manualTrigger/Incidents_RunPlaybook.json new file mode 100644 index 0000000000000..5f89fd839520e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/manualTrigger/Incidents_RunPlaybook.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/metadata/DeleteMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/metadata/DeleteMetadata.json new file mode 100644 index 0000000000000..f910ad516a7ce --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/metadata/DeleteMetadata.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/metadata/GetAllMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/metadata/GetAllMetadata.json new file mode 100644 index 0000000000000..fbf2e19d2bff5 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/metadata/GetAllMetadata.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/metadata/GetAllMetadataOData.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/metadata/GetAllMetadataOData.json new file mode 100644 index 0000000000000..4b976b0571878 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/metadata/GetAllMetadataOData.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/metadata/GetMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/metadata/GetMetadata.json new file mode 100644 index 0000000000000..a6ed0c0a4e82e --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/metadata/GetMetadata.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/metadata/PatchMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/metadata/PatchMetadata.json new file mode 100644 index 0000000000000..50d0cc94b1c65 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/metadata/PatchMetadata.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/metadata/PutMetadata.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/metadata/PutMetadata.json new file mode 100644 index 0000000000000..e716e9d9ec3db --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/metadata/PutMetadata.json @@ -0,0 +1,286 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/metadata/PutMetadataMinimal.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/metadata/PutMetadataMinimal.json new file mode 100644 index 0000000000000..42b204941f903 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/metadata/PutMetadataMinimal.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/officeConsents/DeleteOfficeConsents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/officeConsents/DeleteOfficeConsents.json new file mode 100644 index 0000000000000..f5ab3a6d2ff12 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/officeConsents/DeleteOfficeConsents.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/officeConsents/GetOfficeConsents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/officeConsents/GetOfficeConsents.json new file mode 100644 index 0000000000000..5483f67084b00 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/officeConsents/GetOfficeConsents.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/officeConsents/GetOfficeConsentsById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/officeConsents/GetOfficeConsentsById.json new file mode 100644 index 0000000000000..8b84a19e97e40 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/officeConsents/GetOfficeConsentsById.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/onboardingStates/CreateSentinelOnboardingState.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/onboardingStates/CreateSentinelOnboardingState.json new file mode 100644 index 0000000000000..cfea2679965db --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/onboardingStates/CreateSentinelOnboardingState.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/onboardingStates/DeleteSentinelOnboardingState.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/onboardingStates/DeleteSentinelOnboardingState.json new file mode 100644 index 0000000000000..ae2f654204bd4 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/onboardingStates/DeleteSentinelOnboardingState.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/onboardingStates/GetAllSentinelOnboardingStates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/onboardingStates/GetAllSentinelOnboardingStates.json new file mode 100644 index 0000000000000..4ce01f582a048 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/onboardingStates/GetAllSentinelOnboardingStates.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/onboardingStates/GetSentinelOnboardingState.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/onboardingStates/GetSentinelOnboardingState.json new file mode 100644 index 0000000000000..8e38be01bdf5a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/onboardingStates/GetSentinelOnboardingState.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/operations/ListOperations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/operations/ListOperations.json new file mode 100644 index 0000000000000..4436e54b6bae2 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/operations/ListOperations.json @@ -0,0 +1,563 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/recommendations/GetRecommendation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/recommendations/GetRecommendation.json new file mode 100644 index 0000000000000..98933eaf7e047 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/recommendations/GetRecommendation.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/recommendations/GetRecommendations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/recommendations/GetRecommendations.json new file mode 100644 index 0000000000000..96df5f0aa8a1d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/recommendations/GetRecommendations.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/recommendations/PatchRecommendation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/recommendations/PatchRecommendation.json new file mode 100644 index 0000000000000..75d1e26b26d3a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/recommendations/PatchRecommendation.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/recommendations/ReevaluateRecommendation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/recommendations/ReevaluateRecommendation.json new file mode 100644 index 0000000000000..26a502bb2c8a3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/recommendations/ReevaluateRecommendation.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/repositories/GetRepositories.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/repositories/GetRepositories.json new file mode 100644 index 0000000000000..07e52b6e00e38 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/repositories/GetRepositories.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/securityMLAnalyticsSettings/CreateAnomalySecurityMLAnalyticsSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/securityMLAnalyticsSettings/CreateAnomalySecurityMLAnalyticsSetting.json new file mode 100644 index 0000000000000..5d239a6afc73f --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/securityMLAnalyticsSettings/CreateAnomalySecurityMLAnalyticsSetting.json @@ -0,0 +1,245 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/securityMLAnalyticsSettings/DeleteSecurityMLAnalyticsSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/securityMLAnalyticsSettings/DeleteSecurityMLAnalyticsSetting.json new file mode 100644 index 0000000000000..27a9245682da7 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/securityMLAnalyticsSettings/DeleteSecurityMLAnalyticsSetting.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/securityMLAnalyticsSettings/GetAllSecurityMLAnalyticsSettings.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/securityMLAnalyticsSettings/GetAllSecurityMLAnalyticsSettings.json new file mode 100644 index 0000000000000..a29d916e1236d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/securityMLAnalyticsSettings/GetAllSecurityMLAnalyticsSettings.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/securityMLAnalyticsSettings/GetAnomalySecurityMLAnalyticsSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/securityMLAnalyticsSettings/GetAnomalySecurityMLAnalyticsSetting.json new file mode 100644 index 0000000000000..09254bfecaa63 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/securityMLAnalyticsSettings/GetAnomalySecurityMLAnalyticsSetting.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/settings/DeleteEyesOnSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/settings/DeleteEyesOnSetting.json new file mode 100644 index 0000000000000..d89a2cc534ee1 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/settings/DeleteEyesOnSetting.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/settings/GetAllSettings.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/settings/GetAllSettings.json new file mode 100644 index 0000000000000..d05e7ded54ec5 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/settings/GetAllSettings.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/settings/GetEyesOnSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/settings/GetEyesOnSetting.json new file mode 100644 index 0000000000000..ea11f20d48b32 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/settings/GetEyesOnSetting.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/settings/UpdateEyesOnSetting.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/settings/UpdateEyesOnSetting.json new file mode 100644 index 0000000000000..e2937062996d5 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/settings/UpdateEyesOnSetting.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-01-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 + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/sourcecontrols/CreateSourceControl.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/sourcecontrols/CreateSourceControl.json new file mode 100644 index 0000000000000..8314dd4068838 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/sourcecontrols/CreateSourceControl.json @@ -0,0 +1,162 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/sourcecontrols/DeleteSourceControl.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/sourcecontrols/DeleteSourceControl.json new file mode 100644 index 0000000000000..570366d9144b4 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/sourcecontrols/DeleteSourceControl.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/sourcecontrols/GetSourceControlById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/sourcecontrols/GetSourceControlById.json new file mode 100644 index 0000000000000..10ba9314350c0 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/sourcecontrols/GetSourceControlById.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/sourcecontrols/GetSourceControls.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/sourcecontrols/GetSourceControls.json new file mode 100644 index 0000000000000..07ac0b83a5a00 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/sourcecontrols/GetSourceControls.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/threatintelligence/AppendTagsThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/AppendTagsThreatIntelligence.json new file mode 100644 index 0000000000000..18b4a2b0f14d8 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/AppendTagsThreatIntelligence.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/threatintelligence/CollectThreatIntelligenceMetrics.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/CollectThreatIntelligenceMetrics.json new file mode 100644 index 0000000000000..b3ada9937ea4a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/CollectThreatIntelligenceMetrics.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/threatintelligence/CreateThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/CreateThreatIntelligence.json new file mode 100644 index 0000000000000..5d3163eb48aa9 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/CreateThreatIntelligence.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/threatintelligence/DeleteThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/DeleteThreatIntelligence.json new file mode 100644 index 0000000000000..b61c04b8c1685 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/DeleteThreatIntelligence.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/threatintelligence/GetThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/GetThreatIntelligence.json new file mode 100644 index 0000000000000..08bb2b482ef99 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/GetThreatIntelligence.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/threatintelligence/GetThreatIntelligenceById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/GetThreatIntelligenceById.json new file mode 100644 index 0000000000000..6f2e863a112e3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/GetThreatIntelligenceById.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/threatintelligence/PostThreatIntelligenceCount.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/PostThreatIntelligenceCount.json new file mode 100644 index 0000000000000..2c997e9e42fa5 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/PostThreatIntelligenceCount.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/threatintelligence/PostThreatIntelligenceQuery.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/PostThreatIntelligenceQuery.json new file mode 100644 index 0000000000000..ba7e3cf32dac7 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/PostThreatIntelligenceQuery.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/threatintelligence/QueryThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/QueryThreatIntelligence.json new file mode 100644 index 0000000000000..ad3398f46a18f --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/QueryThreatIntelligence.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/threatintelligence/ReplaceTagsThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/ReplaceTagsThreatIntelligence.json new file mode 100644 index 0000000000000..acf61f9c7c9f7 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/ReplaceTagsThreatIntelligence.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/threatintelligence/UpdateThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/UpdateThreatIntelligence.json new file mode 100644 index 0000000000000..32a79806bcf2d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/threatintelligence/UpdateThreatIntelligence.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/triggeredAnalyticsRuleRuns/triggerRuleRun_Post.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/triggeredAnalyticsRuleRuns/triggerRuleRun_Post.json new file mode 100644 index 0000000000000..1e3568f8b386a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/triggeredAnalyticsRuleRuns/triggerRuleRun_Post.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview" + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRun_Get.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRun_Get.json new file mode 100644 index 0000000000000..54bec7c6d2981 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRun_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRuns_Get.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRuns_Get.json new file mode 100644 index 0000000000000..54c55505c84f5 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/triggeredAnalyticsRuleRuns/triggeredAnalyticsRuleRuns_Get.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/watchlists/CreateWatchlist.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/CreateWatchlist.json new file mode 100644 index 0000000000000..c914a14b0cfac --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/CreateWatchlist.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/watchlists/CreateWatchlistAndWatchlistItems.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/CreateWatchlistAndWatchlistItems.json new file mode 100644 index 0000000000000..d18f6d162521f --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/CreateWatchlistAndWatchlistItems.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/watchlists/CreateWatchlistItem.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/CreateWatchlistItem.json new file mode 100644 index 0000000000000..abdc6900dbe13 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/CreateWatchlistItem.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/watchlists/DeleteWatchlist.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/DeleteWatchlist.json new file mode 100644 index 0000000000000..8ef5352c24712 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/DeleteWatchlist.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "watchlistAlias": "highValueAsset" + }, + "responses": { + "200": { + "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-01-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/DeleteWatchlistItem.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/DeleteWatchlistItem.json new file mode 100644 index 0000000000000..c5c91f229f87b --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/DeleteWatchlistItem.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/watchlists/GetWatchlistByAlias.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/GetWatchlistByAlias.json new file mode 100644 index 0000000000000..77e78108f9a03 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/GetWatchlistByAlias.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/watchlists/GetWatchlistItemById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/GetWatchlistItemById.json new file mode 100644 index 0000000000000..31e0edfef99a3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/GetWatchlistItemById.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/watchlists/GetWatchlistItems.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/GetWatchlistItems.json new file mode 100644 index 0000000000000..44b674fdad20d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/GetWatchlistItems.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/watchlists/GetWatchlists.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/GetWatchlists.json new file mode 100644 index 0000000000000..710d011bdb8d3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/watchlists/GetWatchlists.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerAssignments/CreateJob.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/CreateJob.json new file mode 100644 index 0000000000000..ab20e53a00106 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/CreateJob.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerAssignments/CreateOrUpdateWorkspaceManagerAssignment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/CreateOrUpdateWorkspaceManagerAssignment.json new file mode 100644 index 0000000000000..5945e04b7bd7a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/CreateOrUpdateWorkspaceManagerAssignment.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerAssignments/DeleteJob.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/DeleteJob.json new file mode 100644 index 0000000000000..4faddad3bde72 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/DeleteJob.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerAssignments/DeleteWorkspaceManagerAssignment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/DeleteWorkspaceManagerAssignment.json new file mode 100644 index 0000000000000..0b2cf0b7c71dc --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/DeleteWorkspaceManagerAssignment.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerAssignments/GetAllJobs.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/GetAllJobs.json new file mode 100644 index 0000000000000..ca4bb5bc92c65 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/GetAllJobs.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerAssignments/GetAllWorkspaceManagerAssignments.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/GetAllWorkspaceManagerAssignments.json new file mode 100644 index 0000000000000..95c07a9df3f18 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/GetAllWorkspaceManagerAssignments.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerAssignments/GetJob.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/GetJob.json new file mode 100644 index 0000000000000..aaf1686890621 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/GetJob.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerAssignments/GetWorkspaceManagerAssignment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/GetWorkspaceManagerAssignment.json new file mode 100644 index 0000000000000..c746b12dd16b5 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerAssignments/GetWorkspaceManagerAssignment.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerConfigurations/CreateOrUpdateWorkspaceManagerConfiguration.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerConfigurations/CreateOrUpdateWorkspaceManagerConfiguration.json new file mode 100644 index 0000000000000..6ed2f9332564b --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerConfigurations/CreateOrUpdateWorkspaceManagerConfiguration.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerConfigurations/DeleteWorkspaceManagerConfiguration.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerConfigurations/DeleteWorkspaceManagerConfiguration.json new file mode 100644 index 0000000000000..bfe39ab4d7ef1 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerConfigurations/DeleteWorkspaceManagerConfiguration.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerConfigurations/GetAllWorkspaceManagerConfigurations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerConfigurations/GetAllWorkspaceManagerConfigurations.json new file mode 100644 index 0000000000000..8c969769b0c8b --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerConfigurations/GetAllWorkspaceManagerConfigurations.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerConfigurations/GetWorkspaceManagerConfiguration.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerConfigurations/GetWorkspaceManagerConfiguration.json new file mode 100644 index 0000000000000..7fcbe1fcea55c --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerConfigurations/GetWorkspaceManagerConfiguration.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerGroups/CreateOrUpdateWorkspaceManagerGroup.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerGroups/CreateOrUpdateWorkspaceManagerGroup.json new file mode 100644 index 0000000000000..ed32a81ab96e3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerGroups/CreateOrUpdateWorkspaceManagerGroup.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerGroups/DeleteWorkspaceManagerGroup.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerGroups/DeleteWorkspaceManagerGroup.json new file mode 100644 index 0000000000000..ff674352aaff5 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerGroups/DeleteWorkspaceManagerGroup.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerGroups/GetAllWorkspaceManagerGroups.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerGroups/GetAllWorkspaceManagerGroups.json new file mode 100644 index 0000000000000..4609acfd6c085 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerGroups/GetAllWorkspaceManagerGroups.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerGroups/GetWorkspaceManagerGroup.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerGroups/GetWorkspaceManagerGroup.json new file mode 100644 index 0000000000000..2bf5e18c8d43d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerGroups/GetWorkspaceManagerGroup.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerMembers/CreateOrUpdateWorkspaceManagerMember.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerMembers/CreateOrUpdateWorkspaceManagerMember.json new file mode 100644 index 0000000000000..8c3f030538750 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerMembers/CreateOrUpdateWorkspaceManagerMember.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerMembers/DeleteWorkspaceManagerMember.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerMembers/DeleteWorkspaceManagerMember.json new file mode 100644 index 0000000000000..b8169b24c94ae --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerMembers/DeleteWorkspaceManagerMember.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerMembers/GetAllWorkspaceManagerMembers.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerMembers/GetAllWorkspaceManagerMembers.json new file mode 100644 index 0000000000000..2fc2a41e0afbc --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerMembers/GetAllWorkspaceManagerMembers.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/examples/workspaceManagerMembers/GetWorkspaceManagerMember.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerMembers/GetWorkspaceManagerMember.json new file mode 100644 index 0000000000000..6a7150245a2b5 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/examples/workspaceManagerMembers/GetWorkspaceManagerMember.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2024-01-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-01-01-preview/operations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-01-preview/operations.json new file mode 100644 index 0000000000000..9842f8d72ffe2 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2024-01-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-01-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/v3/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 e49e7c0a5365f..4729327668672 100644 --- a/specification/securityinsights/resource-manager/readme.md +++ b/specification/securityinsights/resource-manager/readme.md @@ -26,17 +26,59 @@ These are the global settings for the SecurityInsights API. ``` yaml openapi-type: arm -tag: package-preview-2023-12 +tag: package-preview-2024-01 ``` --- +### Tag: package-preview-2024-01 + +These settings apply only when `--tag=package-preview-2024-01` is specified on the command line. + +```yaml $(tag) == 'package-preview-2024-01' +input-file: + - Microsoft.SecurityInsights/preview/2024-01-01-preview/AlertRules.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/AutomationRules.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/BillingStatistics.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/Bookmarks.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/ContentPackages.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/ContentProductPackages.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/ContentProductTemplates.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/ContentTemplates.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/Enrichment.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/EnrichmentWithWorkspace.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/Entities.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/EntityQueries.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/EntityQueryTemplates.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/FileImports.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/Hunts.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/Incidents.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/Metadata.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/OfficeConsents.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/OnboardingStates.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/Recommendations.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/SecurityMLAnalyticsSettings.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/Settings.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/SourceControls.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/ThreatIntelligence.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/ThreatIntelligenceCount.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/ThreatIntelligenceQuery.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/TriggeredAnalyticsRuleRuns.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/Watchlists.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/WorkspaceManagerAssignments.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/WorkspaceManagerConfigurations.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/WorkspaceManagerGroups.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/WorkspaceManagerMembers.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/dataConnectorDefinitions.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/dataConnectors.json + - Microsoft.SecurityInsights/preview/2024-01-01-preview/operations.json +``` ### Tag: package-preview-2023-12 These settings apply only when `--tag=package-preview-2023-12` is specified on the command line. -```yaml $(tag) == 'package-preview-2023-12' +``` yaml $(tag) == 'package-preview-2023-12' input-file: - Microsoft.SecurityInsights/preview/2023-12-01-preview/AlertRules.json - Microsoft.SecurityInsights/preview/2023-12-01-preview/AutomationRules.json @@ -71,6 +113,7 @@ input-file: - Microsoft.SecurityInsights/preview/2023-12-01-preview/dataConnectors.json - Microsoft.SecurityInsights/preview/2023-12-01-preview/operations.json ``` + ### Tag: package-2023-11 These settings apply only when `--tag=package-2023-11` is specified on the command line. @@ -897,7 +940,6 @@ directive: - suppress: GuidUsage reason: 'Tenent Id should be a Guid' ``` - --- # Code Generation diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2023-02-01-preview/ManagedInstances.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2023-02-01-preview/ManagedInstances.json index aa0abaf3e8b30..bf279a24059c9 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2023-02-01-preview/ManagedInstances.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2023-02-01-preview/ManagedInstances.json @@ -1072,12 +1072,12 @@ }, "storageIOps": { "format": "int32", - "description": "Storage IOps. Minimum value: 120. Maximum value: 120000. Increments of 1 IOps allowed only. Maximum value depends on the selected hardware family and number of vCores.", + "description": "Storage IOps. Minimum value: 300. Maximum value: 80000. Increments of 1 IOps allowed only. Maximum value depends on the selected hardware family and number of vCores.", "type": "integer" }, "storageThroughputMBps": { "format": "int32", - "description": "Storage throughput in MBps. Minimum value: 25. Maximum value: 4000. Increments of 1 MBps allowed only. Maximum value depends on the selected hardware family and number of vCores.", + "description": "Storage throughput MBps parameter is not supported in the instance create/update operation.", "type": "integer" }, "collation": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2023-05-01-preview/ManagedInstances.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2023-05-01-preview/ManagedInstances.json index 11df27391c0b1..ae40350485cec 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2023-05-01-preview/ManagedInstances.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2023-05-01-preview/ManagedInstances.json @@ -1070,12 +1070,12 @@ }, "storageIOps": { "format": "int32", - "description": "Storage IOps. Minimum value: 120. Maximum value: 120000. Increments of 1 IOps allowed only. Maximum value depends on the selected hardware family and number of vCores.", + "description": "Storage IOps. Minimum value: 300. Maximum value: 80000. Increments of 1 IOps allowed only. Maximum value depends on the selected hardware family and number of vCores.", "type": "integer" }, "storageThroughputMBps": { "format": "int32", - "description": "Storage throughput in MBps. Minimum value: 25. Maximum value: 4000. Increments of 1 MBps allowed only. Maximum value depends on the selected hardware family and number of vCores.", + "description": "Storage throughput MBps parameter is not supported in the instance create/update operation.", "type": "integer" }, "collation": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2023-08-01-preview/ManagedInstances.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2023-08-01-preview/ManagedInstances.json index 26038d2489427..7872b80479ef6 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2023-08-01-preview/ManagedInstances.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2023-08-01-preview/ManagedInstances.json @@ -1106,12 +1106,12 @@ }, "storageIOps": { "format": "int32", - "description": "Storage IOps. Minimum value: 120. Maximum value: 120000. Increments of 1 IOps allowed only. Maximum value depends on the selected hardware family and number of vCores.", + "description": "Storage IOps. Minimum value: 300. Maximum value: 80000. Increments of 1 IOps allowed only. Maximum value depends on the selected hardware family and number of vCores.", "type": "integer" }, "storageThroughputMBps": { "format": "int32", - "description": "Storage throughput in MBps. Minimum value: 25. Maximum value: 4000. Increments of 1 MBps allowed only. Maximum value depends on the selected hardware family and number of vCores.", + "description": "Storage throughput MBps parameter is not supported in the instance create/update operation.", "type": "integer" }, "totalMemoryMB": {