From ad22902e5c12585d5a416f9093710da58fbf7a06 Mon Sep 17 00:00:00 2001 From: Sherylueen Date: Fri, 12 Apr 2024 09:27:23 +0800 Subject: [PATCH 01/33] Adds base for updating Microsoft.AppComplianceAutomation from version preview/2022-11-16-preview to version 2024-06-27 --- .../2024-06-27/appcomplianceautomation.json | 1382 +++++++++++++++++ .../2024-06-27/examples/Operations_List.json | 24 + .../examples/Report_CreateOrUpdate.json | 117 ++ .../2024-06-27/examples/Report_Delete.json | 16 + .../2024-06-27/examples/Report_Get.json | 53 + .../2024-06-27/examples/Report_Update.json | 123 ++ .../2024-06-27/examples/Reports_List.json | 61 + ..._ComplianceDetailedPdfReport_Download.json | 27 + ...Snapshot_CompliancePdfReport_Download.json | 27 + .../Snapshot_ComplianceReport_Download.json | 41 + .../2024-06-27/examples/Snapshot_Get.json | 116 ++ .../Snapshot_ResourceList_Download.json | 32 + .../2024-06-27/examples/Snapshots_List.json | 124 ++ 13 files changed, 2143 insertions(+) create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Operations_List.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceDetailedPdfReport_Download.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_CompliancePdfReport_Download.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceReport_Download.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ResourceList_Download.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json new file mode 100644 index 000000000000..dc4eabf86fa7 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -0,0 +1,1382 @@ +{ + "swagger": "2.0", + "info": { + "title": "App Compliance Automation Tool for Microsoft 365", + "version": "2022-11-16-preview", + "description": "App Compliance Automation Tool for Microsoft 365 API spec" + }, + "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.AppComplianceAutomation/operations": { + "get": { + "tags": [ + "AppComplianceAutomation" + ], + "description": "Lists all of the available REST API operations of the Microsoft.AppComplianceAutomation provider.", + "operationId": "Operations_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of operations.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports": { + "get": { + "tags": [ + "AppComplianceAutomation" + ], + "description": "Get the AppComplianceAutomation report list for the tenant.", + "operationId": "Reports_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + }, + { + "$ref": "#/parameters/TopParameter" + }, + { + "$ref": "#/parameters/SelectParameter" + }, + { + "$ref": "#/parameters/OfferGuidParameter" + }, + { + "$ref": "#/parameters/ReportCreatorTenantIdParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ReportResourceList" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Reports_List": { + "$ref": "./examples/Reports_List.json" + } + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}": { + "get": { + "tags": [ + "AppComplianceAutomation" + ], + "description": "Get the AppComplianceAutomation report and its properties.", + "operationId": "Report_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ReportNameParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ReportResource" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Report_Get": { + "$ref": "./examples/Report_Get.json" + } + } + }, + "put": { + "tags": [ + "AppComplianceAutomation" + ], + "description": "Create a new AppComplianceAutomation report or update an exiting AppComplianceAutomation report.", + "operationId": "Report_CreateOrUpdate", + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/ReportResource" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ReportNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a AppComplianceAutomation report.", + "schema": { + "$ref": "#/definitions/ReportResource" + } + }, + "201": { + "description": "Created. The response describes the new service and contains a Location header to query the operation result.", + "schema": { + "$ref": "#/definitions/ReportResource" + } + }, + "default": { + "description": "Error response.", + "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": { + "Report_CreateOrUpdate": { + "$ref": "./examples/Report_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "AppComplianceAutomation" + ], + "description": "Update an exiting AppComplianceAutomation report.", + "operationId": "Report_Update", + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/ReportResourcePatch" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ReportNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes a AppComplianceAutomation report.", + "schema": { + "$ref": "#/definitions/ReportResource" + } + }, + "201": { + "description": "Long running operation support.", + "schema": { + "$ref": "#/definitions/ReportResource" + } + }, + "202": { + "description": "Long running operation support." + }, + "default": { + "description": "Error response.", + "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": { + "Report_Update": { + "$ref": "./examples/Report_Update.json" + } + } + }, + "delete": { + "tags": [ + "AppComplianceAutomation" + ], + "description": "Delete an AppComplianceAutomation report.", + "operationId": "Report_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ReportNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response indicates the resource has been deleted." + }, + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "204": { + "description": "Success. The response indicates the resource is already deleted." + }, + "default": { + "description": "Error response.", + "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": { + "Report_Delete": { + "$ref": "./examples/Report_Delete.json" + } + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/snapshots": { + "get": { + "tags": [ + "AppComplianceAutomation" + ], + "description": "Get the AppComplianceAutomation snapshot list.", + "operationId": "Snapshots_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ReportNameParameter" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + }, + { + "$ref": "#/parameters/TopParameter" + }, + { + "$ref": "#/parameters/SelectParameter" + }, + { + "$ref": "#/parameters/ReportCreatorTenantIdParameter" + }, + { + "$ref": "#/parameters/OfferGuidParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/SnapshotResourceList" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Snapshots_List": { + "$ref": "./examples/Snapshots_List.json" + } + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/snapshots/{snapshotName}": { + "get": { + "tags": [ + "AppComplianceAutomation" + ], + "description": "Get the AppComplianceAutomation snapshot and its properties.", + "operationId": "Snapshot_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ReportNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/SnapshotResource" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Snapshot_Get": { + "$ref": "./examples/Snapshot_Get.json" + } + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/snapshots/{snapshotName}/download": { + "post": { + "tags": [ + "AppComplianceAutomation" + ], + "description": "Download compliance needs from snapshot, like: Compliance Report, Resource List.", + "operationId": "Snapshot_Download", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ReportNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "Parameters for the query operation", + "required": true, + "schema": { + "$ref": "#/definitions/SnapshotDownloadRequest" + } + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/DownloadResponse" + } + }, + "202": { + "description": "Accepted. The response indicates the exiting AppComplianceAutomation report is now updating and contains a Location header to query the operation result." + }, + "default": { + "description": "Error response.", + "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": { + "Snapshot_Download_ComplianceReport": { + "$ref": "./examples/Snapshot_ComplianceReport_Download.json" + }, + "Snapshot_Download_CompliancePdfReport": { + "$ref": "./examples/Snapshot_CompliancePdfReport_Download.json" + }, + "Snapshot_Download_ComplianceDetailedPdfReport": { + "$ref": "./examples/Snapshot_ComplianceDetailedPdfReport_Download.json" + }, + "Snapshot_Download_ResourceList": { + "$ref": "./examples/Snapshot_ResourceList_Download.json" + } + } + } + } + }, + "definitions": { + "OverviewStatus": { + "description": "The overview of the compliance result for one report.", + "type": "object", + "properties": { + "passedCount": { + "format": "int32", + "type": "integer", + "description": "The count of all passed full automation control." + }, + "failedCount": { + "format": "int32", + "type": "integer", + "description": "The count of all failed full automation control." + }, + "manualCount": { + "format": "int32", + "type": "integer", + "description": "The count of all manual control." + } + } + }, + "ReportComplianceStatus": { + "type": "object", + "readOnly": true, + "description": "A list which includes all the compliance result for one report.", + "properties": { + "m365": { + "description": "The Microsoft 365 certification name.", + "$ref": "#/definitions/OverviewStatus" + } + } + }, + "ResourceMetadata": { + "type": "object", + "description": "Single resource Id's metadata.", + "required": [ + "resourceId" + ], + "properties": { + "resourceId": { + "description": "Resource Id - e.g. \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1\".", + "type": "string" + }, + "resourceType": { + "description": "Resource type.", + "type": "string" + }, + "resourceKind": { + "description": "Resource kind.", + "type": "string" + }, + "resourceName": { + "description": "Resource name.", + "type": "string" + }, + "tags": { + "type": "object", + "description": "Resource's tag type.", + "additionalProperties": { + "description": "Tag properties.", + "type": "string" + } + } + } + }, + "ReportProperties": { + "type": "object", + "description": "Report's properties.", + "required": [ + "timeZone", + "triggerTime", + "resources" + ], + "properties": { + "id": { + "type": "string", + "description": "Report id in database.", + "readOnly": true + }, + "status": { + "description": "Report status.", + "enum": [ + "Active", + "Failed", + "Disabled" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "ReportStatus", + "modelAsString": true + } + }, + "tenantId": { + "type": "string", + "description": "Report's tenant id.", + "readOnly": true + }, + "reportName": { + "description": "Report name.", + "type": "string", + "readOnly": true + }, + "offerGuid": { + "description": "Report offer Guid.", + "type": "string" + }, + "timeZone": { + "type": "string", + "description": "Report collection trigger time's time zone, the available list can be obtained by executing \"Get-TimeZone -ListAvailable\" in PowerShell.\r\nAn example of valid timezone id is \"Pacific Standard Time\"." + }, + "triggerTime": { + "format": "date-time", + "description": "Report collection trigger time.", + "type": "string" + }, + "nextTriggerTime": { + "format": "date-time", + "type": "string", + "description": "Report next collection trigger time.", + "readOnly": true + }, + "lastTriggerTime": { + "format": "date-time", + "type": "string", + "description": "Report last collection trigger time.", + "readOnly": true + }, + "subscriptions": { + "type": "array", + "description": "List of subscription Ids.", + "items": { + "type": "string", + "description": "Single subscription Id." + }, + "readOnly": true + }, + "resources": { + "type": "array", + "description": "List of resource data.", + "items": { + "description": "Single resource metadata.", + "$ref": "#/definitions/ResourceMetadata" + }, + "x-ms-identifiers": [ + "resourceId" + ] + }, + "complianceStatus": { + "readOnly": true, + "description": "Report compliance status.", + "$ref": "#/definitions/ReportComplianceStatus" + }, + "provisioningState": { + "readOnly": true, + "description": "Azure lifecycle management", + "$ref": "#/definitions/ProvisioningState" + } + } + }, + "ReportResource": { + "type": "object", + "description": "A class represent an AppComplianceAutomation report resource.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "Report property.", + "$ref": "#/definitions/ReportProperties" + } + }, + "required": [ + "properties" + ] + }, + "ReportResourcePatch": { + "type": "object", + "description": "A class represent a AppComplianceAutomation report resource update properties.", + "properties": { + "properties": { + "description": "Report property.", + "$ref": "#/definitions/ReportProperties" + } + } + }, + "CategoryStatus": { + "description": "Indicates the category status.", + "enum": [ + "Healthy", + "Unhealthy" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "CategoryStatus", + "modelAsString": true + } + }, + "ControlFamilyStatus": { + "description": "Indicates the control family status.", + "enum": [ + "Healthy", + "Unhealthy" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "ControlFamilyStatus", + "modelAsString": true + } + }, + "ControlStatus": { + "description": "Indicates the control status.", + "enum": [ + "Passed", + "Failed", + "NotApplicable" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "ControlStatus", + "modelAsString": true + } + }, + "AssessmentSeverity": { + "description": "Indicates the assessment severity.", + "enum": [ + "High", + "Medium", + "Low" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "AssessmentSeverity", + "modelAsString": true + } + }, + "ControlType": { + "description": "Indicates the control type.", + "enum": [ + "FullyAutomated", + "PartiallyAutomated", + "Manual" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "ControlType", + "modelAsString": true + } + }, + "ControlFamilyType": { + "description": "Indicates the control family type.", + "enum": [ + "FullyAutomated", + "PartiallyAutomated", + "Manual" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "ControlFamilyType", + "modelAsString": true + } + }, + "CategoryType": { + "description": "Indicates the compliance category type.", + "enum": [ + "FullyAutomated", + "PartiallyAutomated", + "Manual" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "CategoryType", + "modelAsString": true + } + }, + "ResourceStatus": { + "description": "Indicates the resource status.", + "enum": [ + "Healthy", + "Unhealthy", + "NotApplicable" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "ResourceStatus", + "modelAsString": true + } + }, + "Assessment": { + "type": "object", + "description": "A class represent the assessment.", + "properties": { + "name": { + "description": "The name of the assessment.", + "type": "string", + "readOnly": true + }, + "severity": { + "$ref": "#/definitions/AssessmentSeverity", + "readOnly": true, + "description": "The severity level of this assessment." + }, + "description": { + "description": "The description of the assessment.", + "type": "string", + "readOnly": true + }, + "remediation": { + "description": "The remediation of the assessment.", + "type": "string", + "readOnly": true + }, + "isPass": { + "type": "string", + "enum": [ + "True", + "False" + ], + "readOnly": true, + "description": "Indicates whether all the resource(s) are compliant.", + "x-ms-enum": { + "name": "IsPass", + "modelAsString": true + } + }, + "policyId": { + "description": "The policy id mapping to this assessment.", + "type": "string", + "readOnly": true + }, + "resourceList": { + "readOnly": true, + "type": "array", + "description": "List of resource assessments.", + "items": { + "description": "Single resource metadata.", + "$ref": "#/definitions/AssessmentResource" + }, + "x-ms-identifiers": [ + "resourceId" + ] + } + } + }, + "AssessmentResource": { + "type": "object", + "description": "A class represent the assessment resource.", + "properties": { + "resourceId": { + "description": "The Id of the resource.", + "type": "string", + "readOnly": true + }, + "resourceStatus": { + "description": "Resource status.", + "readOnly": true, + "$ref": "#/definitions/ResourceStatus" + }, + "reason": { + "description": "The reason for the N/A resource.", + "type": "string", + "readOnly": true + }, + "statusChangeDate": { + "description": "The status change date for the resource. For unavailable date, set it as N/A.", + "type": "string", + "readOnly": true + } + } + }, + "Control": { + "type": "object", + "description": "A class represent the control.", + "properties": { + "controlId": { + "description": "The Id of the control. e.g. \"Operational Security#10\"", + "type": "string", + "readOnly": true + }, + "controlShortName": { + "description": "The short name of the control. e.g. \"Unsupported OS and Software.\"", + "type": "string", + "readOnly": true + }, + "controlFullName": { + "description": "The full name of the control. e.g. \"Validate that unsupported operating systems and software components are not in use.\"", + "type": "string", + "readOnly": true + }, + "controlType": { + "description": "The control type ", + "$ref": "#/definitions/ControlType", + "readOnly": true + }, + "controlDescription": { + "description": "The control's description", + "type": "string", + "readOnly": true + }, + "controlDescriptionHyperLink": { + "description": "The hyper link to the control's description'.", + "type": "string", + "readOnly": true + }, + "controlStatus": { + "description": "Control status.", + "$ref": "#/definitions/ControlStatus", + "readOnly": true + }, + "assessments": { + "readOnly": true, + "type": "array", + "description": "List of assessments.", + "items": { + "description": "Single assessment content.", + "$ref": "#/definitions/Assessment" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "ControlFamily": { + "type": "object", + "description": "A class represent the control family.", + "properties": { + "familyName": { + "description": "The name of the control family. e.g. \"Malware Protection - Anti-Virus\"", + "type": "string", + "readOnly": true + }, + "familyType": { + "description": "The control family type ", + "$ref": "#/definitions/ControlFamilyType", + "readOnly": true + }, + "familyStatus": { + "readOnly": true, + "description": "Control family status.", + "$ref": "#/definitions/ControlFamilyStatus" + }, + "controls": { + "readOnly": true, + "type": "array", + "description": "List of controls.", + "items": { + "description": "Single control content.", + "$ref": "#/definitions/Control" + }, + "x-ms-identifiers": [ + "controlId" + ] + } + } + }, + "Category": { + "type": "object", + "description": "A class represent the compliance category.", + "properties": { + "categoryName": { + "description": "The name of the compliance category. e.g. \"Operational Security\"", + "type": "string", + "readOnly": true + }, + "categoryType": { + "description": "The category type ", + "$ref": "#/definitions/CategoryType", + "readOnly": true + }, + "categoryStatus": { + "readOnly": true, + "description": "Category status.", + "$ref": "#/definitions/CategoryStatus" + }, + "controlFamilies": { + "readOnly": true, + "type": "array", + "description": "List of control families.", + "items": { + "description": "Single control family content.", + "$ref": "#/definitions/ControlFamily" + }, + "x-ms-identifiers": [ + "familyName" + ] + } + } + }, + "ComplianceResult": { + "type": "object", + "description": "A class represent the compliance result.", + "properties": { + "complianceName": { + "description": "The name of the compliance. e.g. \"M365\"", + "type": "string", + "readOnly": true + }, + "categories": { + "readOnly": true, + "type": "array", + "description": "List of categories.", + "items": { + "description": "Single category content.", + "$ref": "#/definitions/Category" + }, + "x-ms-identifiers": [ + "categoryName" + ] + } + } + }, + "SnapshotDownloadRequest": { + "type": "object", + "description": "Snapshot's download request.", + "required": [ + "downloadType" + ], + "properties": { + "reportCreatorTenantId": { + "description": "Tenant id.", + "type": "string" + }, + "downloadType": { + "description": "Indicates the download type.", + "x-ms-parameter-location": "method", + "enum": [ + "ComplianceReport", + "CompliancePdfReport", + "ComplianceDetailedPdfReport", + "ResourceList" + ], + "type": "string", + "x-ms-enum": { + "name": "DownloadType", + "modelAsString": true + } + }, + "offerGuid": { + "type": "string", + "description": "The offerGuid which mapping to the reports.", + "x-ms-parameter-location": "method", + "minLength": 1 + } + } + }, + "SnapshotProperties": { + "type": "object", + "description": "Snapshot's properties.", + "properties": { + "id": { + "description": "Snapshot id in the database.", + "type": "string", + "readOnly": true + }, + "snapshotName": { + "description": "Snapshot name.", + "type": "string", + "readOnly": true + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC).", + "readOnly": true + }, + "provisioningState": { + "readOnly": true, + "description": "Azure lifecycle management", + "$ref": "#/definitions/ProvisioningState" + }, + "reportProperties": { + "readOnly": true, + "description": "The report essential info.", + "$ref": "#/definitions/ReportProperties" + }, + "reportSystemData": { + "readOnly": true, + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/systemData" + }, + "complianceResults": { + "readOnly": true, + "type": "array", + "description": "List of compliance results.", + "items": { + "description": "Single compliance result.", + "$ref": "#/definitions/ComplianceResult" + }, + "x-ms-identifiers": [] + } + } + }, + "SnapshotResource": { + "type": "object", + "description": "A class represent a AppComplianceAutomation snapshot resource.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "Snapshot's property'.", + "readOnly": true, + "$ref": "#/definitions/SnapshotProperties" + } + } + }, + "ReportResourceList": { + "description": "Object that includes an array of resources and a possible link for next set.", + "type": "object", + "properties": { + "value": { + "description": "List of the reports", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ReportResource" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "SnapshotResourceList": { + "description": "Object that includes an array of resources and a possible link for next set.", + "type": "object", + "properties": { + "value": { + "description": "List of the snapshots", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SnapshotResource" + } + }, + "nextLink": { + "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", + "type": "string" + } + } + }, + "ResourceItem": { + "type": "object", + "description": "Resource Id.", + "properties": { + "subscriptionId": { + "description": "The subscription Id of this resource.", + "type": "string", + "readOnly": true + }, + "resourceGroup": { + "description": "The resource group name of this resource.", + "type": "string", + "readOnly": true + }, + "resourceType": { + "description": "The resource type of this resource.", + "type": "string", + "readOnly": true + }, + "resourceId": { + "description": "The resource Id - e.g. \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1\".", + "type": "string", + "readOnly": true + } + } + }, + "DownloadResponse": { + "description": "Object that includes all the possible response for the download operation.", + "type": "object", + "properties": { + "resourceList": { + "description": "List of the reports", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceItem" + }, + "x-ms-identifiers": [] + }, + "complianceReport": { + "description": "List of the compliance result", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ComplianceReportItem" + }, + "x-ms-identifiers": [] + }, + "compliancePdfReport": { + "description": "compliance pdf report", + "type": "object", + "readOnly": true, + "properties": { + "sasUri": { + "description": "uri of compliance pdf report", + "type": "string", + "readOnly": true, + "x-ms-secret": true + } + } + }, + "complianceDetailedPdfReport": { + "description": "compliance detailed pdf report", + "type": "object", + "readOnly": true, + "properties": { + "sasUri": { + "description": "uri of compliance detailed pdf report", + "type": "string", + "readOnly": true + } + } + } + } + }, + "ComplianceReportItem": { + "type": "object", + "description": "Object that includes all the content for single compliance result.", + "properties": { + "categoryName": { + "type": "string", + "description": "The category name.", + "readOnly": true + }, + "controlId": { + "type": "string", + "description": "The control Id - e.g. \"1\".", + "readOnly": true + }, + "controlName": { + "type": "string", + "description": "The control name.", + "readOnly": true + }, + "controlType": { + "type": "string", + "description": "The control type.", + "$ref": "#/definitions/ControlType", + "readOnly": true + }, + "complianceState": { + "type": "string", + "enum": [ + "Healthy", + "Unhealthy" + ], + "x-ms-enum": { + "name": "ComplianceState", + "modelAsString": true + }, + "description": "The compliance result's status.", + "readOnly": true + }, + "policyId": { + "type": "string", + "description": "The compliance result mapped policy Id.", + "readOnly": true + }, + "policyDisplayName": { + "type": "string", + "description": "The policy's display name.", + "readOnly": true + }, + "policyDescription": { + "type": "string", + "description": "The policy's detail description.", + "readOnly": true + }, + "subscriptionId": { + "type": "string", + "description": "The compliance result mapped subscription Id.", + "readOnly": true + }, + "resourceGroup": { + "type": "string", + "description": "The compliance result mapped resource group.", + "readOnly": true + }, + "resourceType": { + "type": "string", + "description": "The compliance result mapped resource type.", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "The compliance result mapped resource Id - e.g. \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1\".", + "readOnly": true + }, + "statusChangeDate": { + "description": "The compliance result last changed date - e.g. \"2022-10-24T02:55:16.3274379Z\". For unavailable date, set it as \"N/A\".", + "type": "string", + "readOnly": true + } + } + }, + "ProvisioningState": { + "type": "string", + "description": "Resource provisioning states.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "Creating", + "Deleting", + "Updating" + ], + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + } + }, + "parameters": { + "ReportNameParameter": { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]+$", + "x-ms-parameter-location": "method" + }, + "SnapshotNameParameter": { + "name": "snapshotName", + "in": "path", + "description": "Snapshot Name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SkipTokenParameter": { + "name": "$skipToken", + "description": "Skip over when retrieving results.", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "TopParameter": { + "name": "$top", + "description": "Number of elements to return when retrieving results.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 100, + "format": "int32", + "x-ms-parameter-location": "method" + }, + "OfferGuidParameter": { + "name": "offerGuid", + "in": "query", + "required": false, + "type": "string", + "description": "The offerGuid which mapping to the reports.", + "x-ms-parameter-location": "method", + "minLength": 1 + }, + "ReportCreatorTenantIdParameter": { + "name": "reportCreatorTenantId", + "in": "query", + "type": "string", + "required": false, + "description": "The tenant id of the report creator.", + "x-ms-parameter-location": "method", + "minLength": 1 + }, + "DownloadTypeParameter": { + "name": "downloadType", + "in": "query", + "required": true, + "description": "Indicates the download type.", + "x-ms-parameter-location": "method", + "enum": [ + "ComplianceReport", + "CompliancePdfReport", + "ComplianceDetailedPdfReport", + "ResourceList" + ], + "type": "string", + "x-ms-enum": { + "name": "DownloadType", + "modelAsString": true + } + }, + "SelectParameter": { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "OData Select statement. Limits the properties on each entry to just those requested, e.g. ?$select=reportName,id.", + "x-ms-parameter-location": "method", + "minLength": 1 + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Operations_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Operations_List.json new file mode 100644 index 000000000000..70697a01abaa --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Operations_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2022-11-16-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "name": "Microsoft.AppComplianceAutomation/reports/write", + "isDataAction": false, + "display": { + "provider": "Microsoft AppComplianceAutomation", + "resource": "Microsoft.AppComplianceAutomation/reports", + "operation": "Microsoft.AppComplianceAutomation/reports/write", + "description": "Create new reports." + } + } + ] + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json new file mode 100644 index 000000000000..4f95f3d65af6 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json @@ -0,0 +1,117 @@ +{ + "parameters": { + "parameters": { + "properties": { + "offerGuid": "0000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-04T05:11:56.197Z", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint", + "tags": { + "key1": "value1" + } + } + ] + } + }, + "api-version": "2022-11-16-preview", + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", + "name": "testReportName", + "type": "Microsfot.AppComplianceAutomation/reports", + "properties": { + "id": "00000000-0000-0000-0000-000000000000", + "status": "Active", + "tenantId": "00000000-0000-0000-0000-000000000000", + "reportName": "testReportName", + "offerGuid": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:17:23.922Z", + "nextTriggerTime": "2022-03-02T05:17:23.922Z", + "lastTriggerTime": "2022-03-02T05:17:23.922Z", + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "tags": { + "key1": "value1" + } + } + ], + "provisioningState": "Succeeded", + "complianceStatus": { + "m365": { + "passedCount": 0, + "failedCount": 0, + "manualCount": 0 + } + } + }, + "systemData": { + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + } + } + }, + "201": { + "body": { + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", + "name": "testReportName", + "type": "Microsfot.AppComplianceAutomation/reports", + "properties": { + "id": "00000000-0000-0000-0000-000000000000", + "status": "Active", + "tenantId": "00000000-0000-0000-0000-000000000000", + "reportName": "testReportName", + "offerGuid": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:17:23.922Z", + "nextTriggerTime": "2022-03-02T05:17:23.922Z", + "lastTriggerTime": "2022-03-02T05:17:23.922Z", + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "tags": { + "key1": "value1" + } + } + ], + "complianceStatus": { + "m365": { + "passedCount": 0, + "failedCount": 0, + "manualCount": 0 + } + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + } + }, + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json new file mode 100644 index 000000000000..545569a071b8 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2022-11-16-preview", + "reportName": "testReportName" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" + } + }, + "204": {} + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json new file mode 100644 index 000000000000..43797f1aa605 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2022-11-16-preview", + "reportName": "testReport" + }, + "responses": { + "200": { + "body": { + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", + "name": "testReportName", + "type": "Microsfot.AppComplianceAutomation/reports", + "properties": { + "id": "00000000-0000-0000-0000-000000000000", + "status": "Active", + "tenantId": "00000000-0000-0000-0000-000000000000", + "reportName": "testReportName", + "offerGuid": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:17:23.922Z", + "nextTriggerTime": "2022-03-02T05:17:23.922Z", + "lastTriggerTime": "2022-03-02T05:17:23.922Z", + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "tags": { + "key1": "value1" + } + } + ], + "complianceStatus": { + "m365": { + "passedCount": 0, + "failedCount": 0, + "manualCount": 0 + } + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + } + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json new file mode 100644 index 000000000000..947ae839c4db --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json @@ -0,0 +1,123 @@ +{ + "parameters": { + "parameters": { + "properties": { + "offerGuid": "0000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-04T05:11:56.197Z", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint", + "tags": { + "key1": "value1" + } + } + ] + } + }, + "api-version": "2022-11-16-preview", + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", + "name": "testReportName", + "type": "Microsfot.AppComplianceAutomation/reports", + "properties": { + "id": "00000000-0000-0000-0000-000000000000", + "status": "Active", + "tenantId": "00000000-0000-0000-0000-000000000000", + "reportName": "testReportName", + "offerGuid": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:17:23.922Z", + "nextTriggerTime": "2022-03-02T05:17:23.922Z", + "lastTriggerTime": "2022-03-02T05:17:23.922Z", + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "tags": { + "key1": "value1" + } + } + ], + "complianceStatus": { + "m365": { + "passedCount": 0, + "failedCount": 0, + "manualCount": 0 + } + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + } + } + }, + "201": { + "body": { + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", + "name": "testReportName", + "type": "Microsfot.AppComplianceAutomation/reports", + "properties": { + "id": "00000000-0000-0000-0000-000000000000", + "status": "Active", + "tenantId": "00000000-0000-0000-0000-000000000000", + "reportName": "testReportName", + "offerGuid": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:17:23.922Z", + "nextTriggerTime": "2022-03-02T05:17:23.922Z", + "lastTriggerTime": "2022-03-02T05:17:23.922Z", + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "tags": { + "key1": "value1" + } + } + ], + "complianceStatus": { + "m365": { + "passedCount": 0, + "failedCount": 0, + "manualCount": 0 + } + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + } + }, + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json new file mode 100644 index 000000000000..3afe62be6d12 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2022-11-16-preview", + "$skipToken": "1", + "$top": "100", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000", + "offerGuid": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", + "name": "testReportName", + "type": "Microsfot.AppComplianceAutomation/reports", + "properties": { + "id": "00000000-0000-0000-0000-000000000000", + "status": "Active", + "tenantId": "00000000-0000-0000-0000-000000000000", + "reportName": "testReportName", + "offerGuid": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:17:23.922Z", + "nextTriggerTime": "2022-03-02T05:17:23.922Z", + "lastTriggerTime": "2022-03-02T05:17:23.922Z", + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "tags": { + "key1": "value1" + } + } + ], + "complianceStatus": { + "m365": { + "passedCount": 0, + "failedCount": 0, + "manualCount": 0 + } + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + } + } + ], + "nextLink": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports?api-version=2022-11-16-preview&skipToken=1&top=100" + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceDetailedPdfReport_Download.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceDetailedPdfReport_Download.json new file mode 100644 index 000000000000..9f8dafed7ae9 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceDetailedPdfReport_Download.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2022-11-16-preview", + "reportName": "testReportName", + "snapshotName": "testSnapshotName", + "parameters": { + "downloadType": "ComplianceDetailedPdfReport", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000", + "offerGuid": "00000000-0000-0000-0000-000000000000" + } + }, + "responses": { + "200": { + "body": { + "complianceDetailedPdfReport": { + "sasUri": "this is a uri" + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_CompliancePdfReport_Download.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_CompliancePdfReport_Download.json new file mode 100644 index 000000000000..c2ece42f15c6 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_CompliancePdfReport_Download.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2022-11-16-preview", + "reportName": "testReportName", + "snapshotName": "testSnapshotName", + "parameters": { + "downloadType": "CompliancePdfReport", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000", + "offerGuid": "00000000-0000-0000-0000-000000000000" + } + }, + "responses": { + "200": { + "body": { + "compliancePdfReport": { + "sasUri": "this is uri of report" + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceReport_Download.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceReport_Download.json new file mode 100644 index 000000000000..44707c5e6cf4 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceReport_Download.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2022-11-16-preview", + "reportName": "testReportName", + "snapshotName": "testSnapshotName", + "parameters": { + "downloadType": "ComplianceReport", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000", + "offerGuid": "00000000-0000-0000-0000-000000000000" + } + }, + "responses": { + "200": { + "body": { + "complianceReport": [ + { + "categoryName": "Data Security & Privacy", + "controlId": "1", + "controlName": "Validate that TLS Configuration meets or exceeds the TLS Profile Configuration Requirements", + "controlType": "FullyAutomated", + "complianceState": "Healthy", + "policyId": "00000000-0000-0000-0000-000000000000", + "policyDisplayName": "policy name", + "policyDescription": "policy description", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroup": "testGroup", + "resourceType": "storageaccounts", + "resourceId": "testResourceId", + "statusChangeDate": "2021-09-01T17:26:57.4971616Z" + } + ] + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json new file mode 100644 index 000000000000..f1800e928d25 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "api-version": "2022-11-16-preview", + "reportName": "testReportName", + "snapshotName": "testSnapshot" + }, + "responses": { + "200": { + "body": { + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/snapshots/testSnapshot", + "name": "testSnapshot", + "type": "Microsfot.AppComplianceAutomation/reports/snapshots", + "properties": { + "id": "00000000-0000-0000-0000-000000000000", + "snapshotName": "testSnapshot", + "createdAt": "2022-03-04T15:33:59.160Z", + "provisioningState": "Succeeded", + "reportProperties": { + "id": "00000000-0000-0000-0000-000000000000", + "status": "Active", + "tenantId": "00000000-0000-0000-0000-000000000000", + "reportName": "testReportName", + "offerGuid": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-04T15:33:59.160Z", + "nextTriggerTime": "2022-03-04T15:33:59.160Z", + "lastTriggerTime": "2022-03-04T15:33:59.160Z", + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "tags": { + "key1": "value1" + } + } + ], + "complianceStatus": { + "m365": { + "passedCount": 0, + "failedCount": 0, + "manualCount": 0 + } + }, + "provisioningState": "Succeeded" + }, + "reportSystemData": { + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + }, + "complianceResults": [ + { + "complianceName": "M365", + "categories": [ + { + "categoryName": "Operational Security", + "categoryType": "PartiallyAutomated", + "categoryStatus": "Healthy", + "controlFamilies": [ + { + "familyName": "Incident Response", + "familyType": "PartiallyAutomated", + "familyStatus": "Healthy", + "controls": [ + { + "controlId": "Operational Security#75", + "controlShortName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlFullName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlType": "Manual", + "controlDescriptionHyperLink": "https://doc.microsoft.com", + "controlStatus": "Passed", + "controlDescription": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "assessments": [ + { + "name": "AssessmentName", + "severity": "High", + "description": "Assessment Description", + "remediation": "Remediation", + "isPass": "True", + "policyId": "00000000-0000-0000-0000-000000000000", + "resourceList": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceStatus": "Healthy", + "reason": "N/A", + "statusChangeDate": "2022-03-04" + } + ] + } + ] + } + ] + } + ] + } + ] + } + ] + }, + "systemData": { + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + } + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ResourceList_Download.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ResourceList_Download.json new file mode 100644 index 000000000000..e5815f33c353 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ResourceList_Download.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2022-11-16-preview", + "reportName": "testReportName", + "snapshotName": "testSnapshotName", + "parameters": { + "downloadType": "ResourceList", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000", + "offerGuid": "00000000-0000-0000-0000-000000000000" + } + }, + "responses": { + "200": { + "body": { + "resourceList": [ + { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroup": "myResourceGroup", + "resourceType": "SignalR", + "resourceId": "mySignalRService" + } + ] + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json new file mode 100644 index 000000000000..8d5b46a311ca --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "api-version": "2022-11-16-preview", + "$skipToken": "1", + "$top": "100", + "reportName": "testReportName", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000", + "offerGuid": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/snapshots/testSnapshot", + "name": "testSnapshot", + "type": "Microsfot.AppComplianceAutomation/reports/snapshots", + "properties": { + "id": "00000000-0000-0000-0000-000000000000", + "snapshotName": "testSnapshot", + "createdAt": "2022-03-04T15:33:59.160Z", + "provisioningState": "Succeeded", + "reportProperties": { + "id": "00000000-0000-0000-0000-000000000000", + "status": "Active", + "tenantId": "00000000-0000-0000-0000-000000000000", + "reportName": "testReportName", + "offerGuid": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-04T15:33:59.160Z", + "nextTriggerTime": "2022-03-04T15:33:59.160Z", + "lastTriggerTime": "2022-03-04T15:33:59.160Z", + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "tags": { + "key1": "value1" + } + } + ], + "complianceStatus": { + "m365": { + "passedCount": 0, + "failedCount": 0, + "manualCount": 0 + } + }, + "provisioningState": "Succeeded" + }, + "reportSystemData": { + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + }, + "complianceResults": [ + { + "complianceName": "M365", + "categories": [ + { + "categoryName": "Operational Security", + "categoryType": "PartiallyAutomated", + "categoryStatus": "Healthy", + "controlFamilies": [ + { + "familyName": "Incident Response", + "familyType": "PartiallyAutomated", + "familyStatus": "Healthy", + "controls": [ + { + "controlId": "Operational Security#75", + "controlShortName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlFullName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlType": "Manual", + "controlDescriptionHyperLink": "https://doc.microsoft.com", + "controlStatus": "Passed", + "controlDescription": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "assessments": [ + { + "name": "AssessmentName", + "severity": "High", + "description": "Assessment Description", + "remediation": "Remediation", + "isPass": "True", + "policyId": "00000000-0000-0000-0000-000000000000", + "resourceList": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceStatus": "Healthy", + "reason": "N/A", + "statusChangeDate": "2022-03-04" + } + ] + } + ] + } + ] + } + ] + } + ] + } + ] + }, + "systemData": { + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + } + } + ], + "nextLink": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports/testReportName/snapshots?api-version=2022-11-16-preview&skipToken=1&top=100" + } + } + } +} From 083d7d4cebfcdfcbed9892584019b87f5f206809 Mon Sep 17 00:00:00 2001 From: Sherylueen Date: Fri, 12 Apr 2024 09:27:27 +0800 Subject: [PATCH 02/33] Updates readme --- .../resource-manager/readme.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/specification/appcomplianceautomation/resource-manager/readme.md b/specification/appcomplianceautomation/resource-manager/readme.md index ba57e4c7a43b..f35c9c37e311 100644 --- a/specification/appcomplianceautomation/resource-manager/readme.md +++ b/specification/appcomplianceautomation/resource-manager/readme.md @@ -27,15 +27,23 @@ These are the global settings for the appcomplianceautomation. ``` yaml openapi-type: arm openapi-subtype: rpaas -tag: package-2022-11-16-preview +tag: package-2024-06 ``` +### Tag: package-2024-06 + +These settings apply only when `--tag=package-2024-06` is specified on the command line. + +```yaml $(tag) == 'package-2024-06' +input-file: + - Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +``` ### Tag: package-2022-11-16-preview These settings apply only when `--tag=package-2022-11-16-preview` is specified on the command line. -```yaml $(tag) == 'package-2022-11-16-preview' +``` yaml $(tag) == 'package-2022-11-16-preview' input-file: - Microsoft.AppComplianceAutomation/preview/2022-11-16-preview/appcomplianceautomation.json ``` From f781bec9934b4587ed7879db1c08a6519012888d Mon Sep 17 00:00:00 2001 From: Sherylueen Date: Fri, 12 Apr 2024 09:27:29 +0800 Subject: [PATCH 03/33] Updates API version in new specs and examples --- .../stable/2024-06-27/appcomplianceautomation.json | 2 +- .../stable/2024-06-27/examples/Operations_List.json | 2 +- .../stable/2024-06-27/examples/Report_CreateOrUpdate.json | 2 +- .../stable/2024-06-27/examples/Report_Delete.json | 2 +- .../stable/2024-06-27/examples/Report_Get.json | 2 +- .../stable/2024-06-27/examples/Report_Update.json | 2 +- .../stable/2024-06-27/examples/Reports_List.json | 4 ++-- .../Snapshot_ComplianceDetailedPdfReport_Download.json | 2 +- .../examples/Snapshot_CompliancePdfReport_Download.json | 2 +- .../examples/Snapshot_ComplianceReport_Download.json | 2 +- .../stable/2024-06-27/examples/Snapshot_Get.json | 2 +- .../2024-06-27/examples/Snapshot_ResourceList_Download.json | 2 +- .../stable/2024-06-27/examples/Snapshots_List.json | 4 ++-- 13 files changed, 15 insertions(+), 15 deletions(-) diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index dc4eabf86fa7..612bf06b8c9e 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "App Compliance Automation Tool for Microsoft 365", - "version": "2022-11-16-preview", + "version": "2024-06-27", "description": "App Compliance Automation Tool for Microsoft 365 API spec" }, "host": "management.azure.com", diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Operations_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Operations_List.json index 70697a01abaa..f4b5562acbd9 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Operations_List.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Operations_List.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-11-16-preview" + "api-version": "2024-06-27" }, "responses": { "200": { diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json index 4f95f3d65af6..f7610aa145de 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json @@ -15,7 +15,7 @@ ] } }, - "api-version": "2022-11-16-preview", + "api-version": "2024-06-27", "reportName": "testReportName" }, "responses": { diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json index 545569a071b8..04401b984dec 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-11-16-preview", + "api-version": "2024-06-27", "reportName": "testReportName" }, "responses": { diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json index 43797f1aa605..2cedea2a7656 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-11-16-preview", + "api-version": "2024-06-27", "reportName": "testReport" }, "responses": { diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json index 947ae839c4db..298618bb8931 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json @@ -15,7 +15,7 @@ ] } }, - "api-version": "2022-11-16-preview", + "api-version": "2024-06-27", "reportName": "testReportName" }, "responses": { diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json index 3afe62be6d12..55e4af509e7c 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-11-16-preview", + "api-version": "2024-06-27", "$skipToken": "1", "$top": "100", "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000", @@ -54,7 +54,7 @@ } } ], - "nextLink": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports?api-version=2022-11-16-preview&skipToken=1&top=100" + "nextLink": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports?api-version=2024-06-27&skipToken=1&top=100" } } } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceDetailedPdfReport_Download.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceDetailedPdfReport_Download.json index 9f8dafed7ae9..a22cf29df01d 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceDetailedPdfReport_Download.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceDetailedPdfReport_Download.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-11-16-preview", + "api-version": "2024-06-27", "reportName": "testReportName", "snapshotName": "testSnapshotName", "parameters": { diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_CompliancePdfReport_Download.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_CompliancePdfReport_Download.json index c2ece42f15c6..56146e79ee2a 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_CompliancePdfReport_Download.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_CompliancePdfReport_Download.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-11-16-preview", + "api-version": "2024-06-27", "reportName": "testReportName", "snapshotName": "testSnapshotName", "parameters": { diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceReport_Download.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceReport_Download.json index 44707c5e6cf4..b92d8c2321de 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceReport_Download.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceReport_Download.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-11-16-preview", + "api-version": "2024-06-27", "reportName": "testReportName", "snapshotName": "testSnapshotName", "parameters": { diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json index f1800e928d25..01ac451638f9 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-11-16-preview", + "api-version": "2024-06-27", "reportName": "testReportName", "snapshotName": "testSnapshot" }, diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ResourceList_Download.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ResourceList_Download.json index e5815f33c353..02f32229d8f8 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ResourceList_Download.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ResourceList_Download.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-11-16-preview", + "api-version": "2024-06-27", "reportName": "testReportName", "snapshotName": "testSnapshotName", "parameters": { diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json index 8d5b46a311ca..2e521f4994dc 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-11-16-preview", + "api-version": "2024-06-27", "$skipToken": "1", "$top": "100", "reportName": "testReportName", @@ -117,7 +117,7 @@ } } ], - "nextLink": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports/testReportName/snapshots?api-version=2022-11-16-preview&skipToken=1&top=100" + "nextLink": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports/testReportName/snapshots?api-version=2024-06-27&skipToken=1&top=100" } } } From 7df363820785d228c7a3cca16af94eba243abf72 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Mon, 6 May 2024 11:05:55 +0800 Subject: [PATCH 04/33] add new stable version for Microsoft.AppComplianceAutomation --- .../2024-06-27/Evidences_CreateOrUpdate.json | 65 + .../examples/2024-06-27/Evidences_Delete.json | 13 + .../2024-06-27/Evidences_Download.json | 22 + .../examples/2024-06-27/Evidences_Get.json | 34 + .../2024-06-27/Evidences_ListByReport.json | 37 + ...InUseStorageAccountsWithSubscriptions.json | 33 + ...seStorageAccountsWithoutSubscriptions.json | 28 + .../examples/2024-06-27/Onboard.json | 29 + .../examples/2024-06-27/Operations_List.json | 25 + .../2024-06-27/Report_CreateOrUpdate.json | 149 + .../examples/2024-06-27/Report_Delete.json | 17 + .../examples/2024-06-27/Report_Fix.json | 22 + .../examples/2024-06-27/Report_Get.json | 80 + .../examples/2024-06-27/Report_Update.json | 109 + .../examples/2024-06-27/Report_Verify.json | 22 + .../Reports_CheckNameAvailability.json | 20 + .../Reports_GetCollectionCount.json | 18 + .../2024-06-27/Reports_GetOverviewStatus.json | 30 + .../examples/2024-06-27/Reports_List.json | 88 + ...orts_Evidence_Check_Name_Availability.json | 21 + ...orts_Snapshot_Check_Name_Availability.json | 21 + ...ports_Webhook_Check_Name_Availability.json | 21 + .../2024-06-27/Reports_SyncCertRecord.json | 39 + .../ScopingConfiguration_CreateOrUpdate.json | 97 + .../ScopingConfiguration_Delete.json | 13 + .../2024-06-27/ScopingConfiguration_Get.json | 44 + .../ScopingConfigurations_List.json | 47 + .../examples/2024-06-27/ScopingQuestions.json | 100 + ...wnload_Compliance_Detailed_Pdf_Report.json | 29 + ...apshot_Download_Compliance_Pdf_Report.json | 29 + ...d_Snapshot_Download_Compliance_Report.json | 42 + ...nload_Snapshot_Download_Resource_List.json | 34 + .../examples/2024-06-27/Snapshots_Get.json | 184 + .../examples/2024-06-27/Snapshots_List.json | 194 + .../2024-06-27/TriggerEvaluation.json | 51 + .../2024-06-27/Webhooks_CreateOrUpdate.json | 85 + .../examples/2024-06-27/Webhooks_Delete.json | 13 + .../examples/2024-06-27/Webhooks_Get.json | 41 + .../examples/2024-06-27/Webhooks_List.json | 47 + .../examples/2024-06-27/Webhooks_Update.json | 55 + .../main.tsp | 40 + .../models/models.tsp | 1879 +++++++ .../operations.tsp | 127 + .../resources/EvidenceResource.tsp | 124 + .../resources/ReportResource.tsp | 173 + .../ScopingConfigurationResource.tsp | 77 + .../resources/SnapshotResource.tsp | 80 + .../resources/WebhookResource.tsp | 98 + .../routes.tsp | 95 + .../tspconfig.yaml | 28 + .../2024-06-27/appcomplianceautomation.json | 4845 ++++++++++++++--- .../examples/Evidences_CreateOrUpdate.json | 65 + .../2024-06-27/examples/Evidences_Delete.json | 13 + .../examples/Evidences_Download.json | 22 + .../2024-06-27/examples/Evidences_Get.json | 34 + .../examples/Evidences_ListByReport.json | 37 + ...InUseStorageAccountsWithSubscriptions.json | 33 + ...seStorageAccountsWithoutSubscriptions.json | 28 + .../stable/2024-06-27/examples/Onboard.json | 29 + .../2024-06-27/examples/Operations_List.json | 3 +- .../examples/Report_CreateOrUpdate.json | 160 +- .../2024-06-27/examples/Report_Delete.json | 9 +- .../2024-06-27/examples/Report_Fix.json | 22 + .../2024-06-27/examples/Report_Get.json | 77 +- .../2024-06-27/examples/Report_Update.json | 144 +- .../2024-06-27/examples/Report_Verify.json | 22 + .../Reports_CheckNameAvailability.json | 20 + .../examples/Reports_GetCollectionCount.json | 18 + .../examples/Reports_GetOverviewStatus.json | 30 + .../2024-06-27/examples/Reports_List.json | 87 +- ...orts_Evidence_Check_Name_Availability.json | 21 + ...orts_Snapshot_Check_Name_Availability.json | 21 + ...ports_Webhook_Check_Name_Availability.json | 21 + .../examples/Reports_SyncCertRecord.json | 39 + .../ScopingConfiguration_CreateOrUpdate.json | 97 + .../examples/ScopingConfiguration_Delete.json | 13 + .../examples/ScopingConfiguration_Get.json | 44 + .../examples/ScopingConfigurations_List.json | 47 + .../2024-06-27/examples/ScopingQuestions.json | 100 + ...wnload_Compliance_Detailed_Pdf_Report.json | 29 + ...apshot_Download_Compliance_Pdf_Report.json | 29 + ...d_Snapshot_Download_Compliance_Report.json | 42 + ...nload_Snapshot_Download_Resource_List.json | 34 + .../2024-06-27/examples/Snapshots_Get.json | 184 + .../2024-06-27/examples/Snapshots_List.json | 222 +- .../examples/TriggerEvaluation.json | 51 + .../examples/Webhooks_CreateOrUpdate.json | 85 + .../2024-06-27/examples/Webhooks_Delete.json | 13 + .../2024-06-27/examples/Webhooks_Get.json | 41 + .../2024-06-27/examples/Webhooks_List.json | 47 + .../2024-06-27/examples/Webhooks_Update.json | 55 + 91 files changed, 10625 insertions(+), 1077 deletions(-) create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_CreateOrUpdate.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Delete.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Download.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Get.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_ListByReport.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ListInUseStorageAccountsWithSubscriptions.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ListInUseStorageAccountsWithoutSubscriptions.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Onboard.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Operations_List.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_CreateOrUpdate.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Delete.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Fix.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Get.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Update.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Verify.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_CheckNameAvailability.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetCollectionCount.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetOverviewStatus.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_List.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_SyncCertRecord.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_CreateOrUpdate.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_Delete.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_Get.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfigurations_List.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingQuestions.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Report.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Resource_List.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Get.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_List.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/TriggerEvaluation.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_CreateOrUpdate.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Delete.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Get.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_List.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Update.json create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp create mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_CreateOrUpdate.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Delete.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Download.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Get.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_ListByReport.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ListInUseStorageAccountsWithSubscriptions.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ListInUseStorageAccountsWithoutSubscriptions.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Onboard.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Fix.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Verify.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_CheckNameAvailability.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetCollectionCount.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetOverviewStatus.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_SyncCertRecord.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_CreateOrUpdate.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_Delete.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_Get.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfigurations_List.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingQuestions.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Report.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Resource_List.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Get.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/TriggerEvaluation.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_CreateOrUpdate.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Delete.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Get.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_List.json create mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Update.json diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_CreateOrUpdate.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_CreateOrUpdate.json new file mode 100644 index 000000000000..41184da1447a --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_CreateOrUpdate.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "evidenceName": "evidence1", + "parameters": { + "properties": { + "controlId": "Operational_Security_10", + "evidenceType": "File", + "filePath": "/test-byos/evidence1.png", + "responsibilityId": "authorized_ip_ranges_should_be_defined_on_kubernetes_services" + } + }, + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "name": "evidence1", + "type": "Microsfot.AppComplianceAutomation/reports/evidences", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/evidences/evidence1", + "properties": { + "controlId": "Operational_Security_10", + "evidenceType": "File", + "extraData": "sampleData", + "filePath": "/acat-container/evidence1.png", + "provisioningState": "Succeeded", + "responsibilityId": "authorized_ip_ranges_should_be_defined_on_kubernetes_services" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "name": "evidence1", + "type": "Microsfot.AppComplianceAutomation/reports/evidences", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/evidences/evidence1", + "properties": { + "controlId": "Operational_Security_10", + "evidenceType": "File", + "extraData": "sampleData", + "filePath": "/acat-container/evidence1.png", + "provisioningState": "Succeeded", + "responsibilityId": "authorized_ip_ranges_should_be_defined_on_kubernetes_services" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Evidences_CreateOrUpdate", + "title": "Evidences_CreateOrUpdate" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Delete.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Delete.json new file mode 100644 index 000000000000..59a9ab820681 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "evidenceName": "evidence1", + "reportName": "testReportName" + }, + "responses": { + "200": {}, + "204": {} + }, + "operationId": "Evidences_Delete", + "title": "Evidences_Delete" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Download.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Download.json new file mode 100644 index 000000000000..cbbf140454e5 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Download.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "evidenceName": "evidence1", + "parameters": { + "offerGuid": "00000000-0000-0000-0000-000000000000", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000" + }, + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "evidenceFile": { + "url": "this is a url" + } + } + } + }, + "operationId": "Evidences_Download", + "title": "Evidences_Download" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Get.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Get.json new file mode 100644 index 000000000000..510d8971ae53 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "evidenceName": "evidence1", + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "name": "evidence1", + "type": "Microsfot.AppComplianceAutomation/reports/evidences", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/evidences/evidence1", + "properties": { + "controlId": "Operational_Security_10", + "evidenceType": "File", + "extraData": "sampleData", + "filePath": "/acat-container/evidence1.png", + "provisioningState": "Succeeded", + "responsibilityId": "authorized_ip_ranges_should_be_defined_on_kubernetes_services" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Evidences_Get", + "title": "Evidences_Get" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_ListByReport.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_ListByReport.json new file mode 100644 index 000000000000..260d1be6e40f --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_ListByReport.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "reportName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "evidence1", + "type": "Microsfot.AppComplianceAutomation/reports/evidences", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/evidences/evidence1", + "properties": { + "controlId": "Operational_Security_10", + "evidenceType": "File", + "extraData": "sampleData", + "filePath": "/acat-container/evidence1.png", + "provisioningState": "Succeeded", + "responsibilityId": "authorized_ip_ranges_should_be_defined_on_kubernetes_services" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "Evidences_ListByReport", + "title": "Evidences_ListByReport" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ListInUseStorageAccountsWithSubscriptions.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ListInUseStorageAccountsWithSubscriptions.json new file mode 100644 index 000000000000..e5596d869abe --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ListInUseStorageAccountsWithSubscriptions.json @@ -0,0 +1,33 @@ +{ + "operationId": "ProviderActions_ListInUseStorageAccounts", + "title": "ListInUseStorageAccountsWithSubscriptions", + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "subscriptionIds": [ + "0000000-0000-0000-0000-000000000001", + "0000000-0000-0000-0000-000000000002" + ] + } + }, + "responses": { + "200": { + "body": { + "storageAccountList": [ + { + "subscriptionId": "0000000-0000-0000-0000-000000000001", + "resourceGroup": "tetsRG", + "accountName": "SA_name1", + "location": "WEST US" + }, + { + "subscriptionId": "0000000-0000-0000-0000-000000000001", + "resourceGroup": "tetsRG", + "accountName": "SA_name2", + "location": "WEST US" + } + ] + } + } + } +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ListInUseStorageAccountsWithoutSubscriptions.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ListInUseStorageAccountsWithoutSubscriptions.json new file mode 100644 index 000000000000..7b9ccfcd9e83 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ListInUseStorageAccountsWithoutSubscriptions.json @@ -0,0 +1,28 @@ +{ + "operationId": "ProviderActions_ListInUseStorageAccounts", + "title": "ListInUseStorageAccountsWithoutSubscriptions", + "parameters": { + "api-version": "2024-06-27", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "storageAccountList": [ + { + "subscriptionId": "0000000-0000-0000-0000-000000000001", + "resourceGroup": "tetsRG", + "accountName": "SA_name1", + "location": "WEST US" + }, + { + "subscriptionId": "0000000-0000-0000-0000-000000000001", + "resourceGroup": "tetsRG", + "accountName": "SA_name2", + "location": "WEST US" + } + ] + } + } + } +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Onboard.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Onboard.json new file mode 100644 index 000000000000..3aaaff41bbd4 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Onboard.json @@ -0,0 +1,29 @@ +{ + "operationId": "ProviderActions_Onboard", + "title": "Onboard", + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "subscriptionIds": [ + "00000000-0000-0000-0000-000000000000", + "00000000-0000-0000-0000-000000000001" + ] + } + }, + "responses": { + "200": { + "body": { + "subscriptionIds": [ + "00000000-0000-0000-0000-000000000000", + "00000000-0000-0000-0000-000000000001" + ] + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" + } + } + } +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Operations_List.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Operations_List.json new file mode 100644 index 000000000000..289f672cdec0 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Operations_List.json @@ -0,0 +1,25 @@ +{ + "title": "Operations_List", + "operationId": "Operations_List", + "parameters": { + "api-version": "2024-06-27" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.AppComplianceAutomation/reports/write", + "isDataAction": false, + "display": { + "provider": "Microsoft AppComplianceAutomation", + "resource": "Microsoft.AppComplianceAutomation/reports", + "operation": "Microsoft.AppComplianceAutomation/reports/write", + "description": "Create new reports." + } + } + ] + } + } + } +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_CreateOrUpdate.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_CreateOrUpdate.json new file mode 100644 index 000000000000..f918df4dcc81 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_CreateOrUpdate.json @@ -0,0 +1,149 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "properties": { + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + } + ], + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-04T05:00:00.000Z" + } + }, + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "name": "testReportName", + "type": "Microsfot.AppComplianceAutomation/reports", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", + "properties": { + "certRecords": [ + { + "certificationStatus": "CertIngestion", + "controls": [ + { + "controlId": "Operational_Security_10", + "controlStatus": "Approved" + } + ], + "ingestionStatus": "EvidenceResubmitted", + "offerGuid": "00000000-0000-0000-0000-000000000001" + } + ], + "complianceStatus": { + "m365": { + "failedCount": 0, + "manualCount": 0, + "passedCount": 0 + } + }, + "lastTriggerTime": "2022-03-02T05:00:00.000Z", + "nextTriggerTime": "2022-03-02T05:00:00.000Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "provisioningState": "Succeeded", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" + } + ], + "status": "Active", + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "tenantId": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:00:00.000Z" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "name": "testReportName", + "type": "Microsfot.AppComplianceAutomation/reports", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", + "properties": { + "complianceStatus": { + "m365": { + "failedCount": 0, + "manualCount": 0, + "passedCount": 0 + } + }, + "lastTriggerTime": "2022-03-02T05:00:00.000Z", + "nextTriggerTime": "2022-03-02T05:00:00.000Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "provisioningState": "Succeeded", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" + } + ], + "status": "Active", + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "tenantId": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:00:00.000Z" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Reports_CreateOrUpdate", + "title": "Report_CreateOrUpdate" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Delete.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Delete.json new file mode 100644 index 000000000000..c253f72017a6 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + }, + "204": {} + }, + "operationId": "Reports_Delete", + "title": "Report_Delete" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Fix.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Fix.json new file mode 100644 index 000000000000..26ff98f180aa --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Fix.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReport" + }, + "responses": { + "200": { + "body": { + "reason": "", + "result": "Succeeded" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Reports_Fix", + "title": "Report_Fix" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Get.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Get.json new file mode 100644 index 000000000000..9141822657c9 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Get.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReport" + }, + "responses": { + "200": { + "body": { + "name": "testReportName", + "type": "Microsfot.AppComplianceAutomation/reports", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", + "properties": { + "certRecords": [ + { + "certificationStatus": "CertIngestion", + "controls": [ + { + "controlId": "Operational_Security_10", + "controlStatus": "Approved" + } + ], + "ingestionStatus": "EvidenceResubmitted", + "offerGuid": "00000000-0000-0000-0000-000000000001" + } + ], + "complianceStatus": { + "m365": { + "failedCount": 0, + "manualCount": 0, + "passedCount": 0 + } + }, + "errors": [ + "resource-inaccessible" + ], + "lastTriggerTime": "2022-03-02T05:00:00.000Z", + "nextTriggerTime": "2022-03-02T05:00:00.000Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "provisioningState": "Succeeded", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" + } + ], + "status": "Failed", + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "tenantId": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:00:00.000Z" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Reports_Get", + "title": "Report_Get" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Update.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Update.json new file mode 100644 index 000000000000..611d8b5ebfa8 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Update.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "properties": { + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" + } + ], + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-04T05:00:00.000Z" + } + }, + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "name": "testReportName", + "type": "Microsfot.AppComplianceAutomation/reports", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", + "properties": { + "certRecords": [ + { + "certificationStatus": "CertIngestion", + "controls": [ + { + "controlId": "Operational_Security_10", + "controlStatus": "Approved" + } + ], + "ingestionStatus": "EvidenceResubmitted", + "offerGuid": "00000000-0000-0000-0000-000000000001" + } + ], + "complianceStatus": { + "m365": { + "failedCount": 0, + "manualCount": 0, + "passedCount": 0 + } + }, + "lastTriggerTime": "2022-03-02T05:00:00.000Z", + "nextTriggerTime": "2022-03-02T05:00:00.000Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "provisioningState": "Succeeded", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" + } + ], + "status": "Active", + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "tenantId": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:00:00.000Z" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Reports_Update", + "title": "Report_Update" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Verify.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Verify.json new file mode 100644 index 000000000000..e41d7293a90b --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Verify.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReport" + }, + "responses": { + "200": { + "body": { + "reason": "", + "result": "Succeeded" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Report_Verify", + "title": "Report_Verify" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_CheckNameAvailability.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_CheckNameAvailability.json new file mode 100644 index 000000000000..e6770681424e --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_CheckNameAvailability.json @@ -0,0 +1,20 @@ +{ + "operationId": "ProviderActions_CheckNameAvailability", + "title": "Reports_CheckNameAvailability", + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "name": "reportABC", + "type": "Microsoft.AppComplianceAutomation/reports" + } + }, + "responses": { + "200": { + "body": { + "message": "An report named 'reportABC' is already in use.", + "nameAvailable": false, + "reason": "AlreadyExists" + } + } + } +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetCollectionCount.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetCollectionCount.json new file mode 100644 index 000000000000..32848a991284 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetCollectionCount.json @@ -0,0 +1,18 @@ +{ + "operationId": "ProviderActions_GetCollectionCount", + "title": "Reports_GetCollectionCount", + "parameters": { + "api-version": "2024-06-27", + "$filter": "Name eq 'Milk'", + "parameters": { + "type": "Microsoft.AppComplianceAutomation/reports" + } + }, + "responses": { + "200": { + "body": { + "count": 100 + } + } + } +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetOverviewStatus.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetOverviewStatus.json new file mode 100644 index 000000000000..8e81cec2c8bb --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetOverviewStatus.json @@ -0,0 +1,30 @@ +{ + "operationId": "ProviderActions_GetOverviewStatus", + "title": "Reports_GetOverviewStatus", + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "type": "Microsoft.AppComplianceAutomation/reports" + } + }, + "responses": { + "200": { + "body": { + "statusList": [ + { + "statusName": "Active", + "statusValue": "100" + }, + { + "statusName": "Failed", + "statusValue": "0" + }, + { + "statusName": "Disabled", + "statusValue": "0" + } + ] + } + } + } +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_List.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_List.json new file mode 100644 index 000000000000..66635cccc4cc --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_List.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "$skipToken": "1", + "$top": "100", + "api-version": "2024-06-27", + "offerGuid": "00000000-0000-0000-0000-000000000000", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports?api-version=2024-06-27&skipToken=1&top=100", + "value": [ + { + "name": "testReportName", + "type": "Microsfot.AppComplianceAutomation/reports", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", + "properties": { + "certRecords": [ + { + "certificationStatus": "CertIngestion", + "controls": [ + { + "controlId": "Operational_Security_10", + "controlStatus": "Approved" + } + ], + "ingestionStatus": "EvidenceResubmitted", + "offerGuid": "00000000-0000-0000-0000-000000000001" + } + ], + "complianceStatus": { + "m365": { + "failedCount": 0, + "manualCount": 0, + "notApplicableCount": 0, + "passedCount": 0, + "pendingCount": 0 + } + }, + "errors": [], + "lastTriggerTime": "2022-03-02T05:00:00.000Z", + "nextTriggerTime": "2022-03-02T05:00:00.000Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "provisioningState": "Succeeded", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" + } + ], + "status": "Active", + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "tenantId": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:00:00.000Z" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "Reports_List", + "title": "Reports_List" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json new file mode 100644 index 000000000000..18cef3b72ecb --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "name": "evidenceABC", + "type": "Microsoft.AppComplianceAutomation/reports/evidences" + }, + "reportName": "reportABC" + }, + "responses": { + "200": { + "body": { + "message": "An evidence named 'evidenceABC' is already in use.", + "nameAvailable": false, + "reason": "AlreadyExists" + } + } + }, + "operationId": "Reports_NestedResourceCheckNameAvailability", + "title": "Reports_EvidenceCheckNameAvailability" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json new file mode 100644 index 000000000000..5b1790224b7b --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "name": "snapshotABC", + "type": "Microsoft.AppComplianceAutomation/reports/snapshots" + }, + "reportName": "reportABC" + }, + "responses": { + "200": { + "body": { + "message": "An snapshot named 'snapshotABC' is already in use.", + "nameAvailable": false, + "reason": "AlreadyExists" + } + } + }, + "operationId": "Reports_NestedResourceCheckNameAvailability", + "title": "Reports_SnapshotCheckNameAvailability" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json new file mode 100644 index 000000000000..aa1e3446fb72 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "name": "webhookABC", + "type": "Microsoft.AppComplianceAutomation/reports/webhooks" + }, + "reportName": "reportABC" + }, + "responses": { + "200": { + "body": { + "message": "An webhook named 'webhookABC' is already in use.", + "nameAvailable": false, + "reason": "AlreadyExists" + } + } + }, + "operationId": "Reports_NestedResourceCheckNameAvailability", + "title": "Reports_WebhookCheckNameAvailability" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_SyncCertRecord.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_SyncCertRecord.json new file mode 100644 index 000000000000..2dc22b5ca72c --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_SyncCertRecord.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "certRecord": { + "certificationStatus": "CertIngestion", + "controls": [ + { + "controlId": "Operational_Security_10", + "controlStatus": "Approved" + } + ], + "ingestionStatus": "EvidenceResubmitted", + "offerGuid": "00000000-0000-0000-0000-000000000001" + } + }, + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "certRecord": { + "offerGuid": "addb13fc-64bf-4005-b693-4c2f094e2187", + "certificationStatus": "CertIngestion", + "ingestionStatus": "InitialDocumentResubmitted", + "controls": [] + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Reports_SyncCertRecord", + "title": "Reports_SyncCertRecord" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_CreateOrUpdate.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_CreateOrUpdate.json new file mode 100644 index 000000000000..9b918bdc7ac2 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_CreateOrUpdate.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "properties": { + "answers": [ + { + "answers": [ + "Azure" + ], + "questionId": "GEN20_hostingEnvironment" + }, + { + "answers": [], + "questionId": "DHP_G07_customerDataProcess" + }, + { + "answers": [], + "questionId": "Tier2InitSub_serviceCommunicate" + } + ] + } + }, + "reportName": "testReportName", + "scopingConfigurationName": "default" + }, + "responses": { + "200": { + "body": { + "name": "default", + "type": "Microsoft.AppComplianceAutomation/reports/scopingConfigurations", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/scopingConfigurations/default", + "properties": { + "answers": [ + { + "answers": [ + "Azure" + ], + "questionId": "GEN20_hostingEnvironment" + }, + { + "answers": [], + "questionId": "DHP_G07_customerDataProcess" + }, + { + "answers": [], + "questionId": "Tier2InitSub_serviceCommunicate" + } + ] + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "name": "default", + "type": "Microsoft.AppComplianceAutomation/reports/scopingConfigurations", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/scopingConfigurations/default", + "properties": { + "answers": [ + { + "answers": [ + "Azure" + ], + "questionId": "GEN20_hostingEnvironment" + }, + { + "answers": [], + "questionId": "DHP_G07_customerDataProcess" + }, + { + "answers": [], + "questionId": "Tier2InitSub_serviceCommunicate" + } + ] + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "ScopingConfiguration_CreateOrUpdate", + "title": "ScopingConfiguration_CreateOrUpdate" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_Delete.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_Delete.json new file mode 100644 index 000000000000..f5a132637ae2 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName", + "scopingConfigurationName": "default" + }, + "responses": { + "200": {}, + "204": {} + }, + "operationId": "ScopingConfiguration_Delete", + "title": "ScopingConfiguration_Delete" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_Get.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_Get.json new file mode 100644 index 000000000000..5ec5a51c5190 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName", + "scopingConfigurationName": "default" + }, + "responses": { + "200": { + "body": { + "name": "default", + "type": "Microsoft.AppComplianceAutomation/reports/scopingConfigurations", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/scopingConfigurations/default", + "properties": { + "answers": [ + { + "answers": [ + "Azure" + ], + "questionId": "GEN20_hostingEnvironment" + }, + { + "answers": [], + "questionId": "DHP_G07_customerDataProcess" + }, + { + "answers": [], + "questionId": "Tier2InitSub_serviceCommunicate" + } + ] + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "ScopingConfiguration_Get", + "title": "ScopingConfiguration" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfigurations_List.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfigurations_List.json new file mode 100644 index 000000000000..734dd92af311 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfigurations_List.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "default", + "type": "Microsoft.AppComplianceAutomation/reports/scopingConfigurations", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/scopingConfigurations/default", + "properties": { + "answers": [ + { + "answers": [ + "Azure" + ], + "questionId": "GEN20_hostingEnvironment" + }, + { + "answers": [], + "questionId": "DHP_G07_customerDataProcess" + }, + { + "answers": [], + "questionId": "Tier2InitSub_serviceCommunicate" + } + ] + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "ScopingConfigurations_List", + "title": "ScopingConfigurations_List" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingQuestions.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingQuestions.json new file mode 100644 index 000000000000..55708a0bd0d0 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingQuestions.json @@ -0,0 +1,100 @@ +{ + "operationId": "GetScopingQuestions", + "title": "GetScopingQuestions", + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "questions": [ + { + "questionId": "DHP_G07_customerDataProcess", + "inputType": "Boolean", + "optionIds": [], + "rules": [ + "Required" + ], + "showSubQuestionsValue": "true", + "superiorQuestionId": null + }, + { + "questionId": "DHP_G04_graphPermissionData", + "inputType": "Text", + "optionIds": [], + "rules": [ + "Required", + "CharLength" + ], + "showSubQuestionsValue": null, + "superiorQuestionId": "DHP_G07_customerDataProcess" + }, + { + "questionId": "DHP_G06_customerDataStorage", + "inputType": "Boolean", + "optionIds": [], + "rules": [ + "Required" + ], + "showSubQuestionsValue": "true", + "superiorQuestionId": null + }, + { + "questionId": "DHP_G05_graphPermissionInfo", + "inputType": "Text", + "optionIds": [], + "rules": [ + "Required", + "CharLength", + "PreventNonEnglishChar" + ], + "showSubQuestionsValue": null, + "superiorQuestionId": "DHP_G06_customerDataStorage" + }, + { + "questionId": "DHP_G08_storageLocation", + "inputType": "MultiSelectDropdown", + "optionIds": [ + "Croatia", + "Cuba", + "Curaçao", + "Cyprus", + "Czechia", + "Côte d'Ivoire", + "Denmark", + "Djibouti", + "Dominica", + "Dominican Republic (the)", + "Ecuador", + "Egypt" + ], + "rules": [ + "Required" + ], + "showSubQuestionsValue": null, + "superiorQuestionId": "DHP_G06_customerDataStorage" + }, + { + "questionId": "LEG03_complianceDataTermination", + "superiorQuestionId": "DHP_G06_customerDataStorage", + "inputType": "SingleSelectEnum", + "optionIds": [], + "rules": [ + "Required" + ], + "showSubQuestionsValue": null + } + ] + }, + "systemData": { + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + } + } + } +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json new file mode 100644 index 000000000000..d4b213c0bdee --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "downloadType": "ComplianceDetailedPdfReport", + "offerGuid": "00000000-0000-0000-0000-000000000000", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000" + }, + "reportName": "testReportName", + "snapshotName": "testSnapshotName" + }, + "responses": { + "200": { + "body": { + "complianceDetailedPdfReport": { + "sasUri": "this is a uri" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Snapshots_Download", + "title": "Snapshot_Download_ComplianceDetailedPdfReport" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json new file mode 100644 index 000000000000..e016ce194119 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "downloadType": "CompliancePdfReport", + "offerGuid": "00000000-0000-0000-0000-000000000001", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000" + }, + "reportName": "testReportName", + "snapshotName": "testSnapshotName" + }, + "responses": { + "200": { + "body": { + "compliancePdfReport": { + "sasUri": "this is uri of report" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Snapshots_Download", + "title": "Snapshot_Download_CompliancePdfReport" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Report.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Report.json new file mode 100644 index 000000000000..d87ae1b85dc9 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Report.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "downloadType": "ComplianceReport", + "offerGuid": "00000000-0000-0000-0000-000000000001", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000" + }, + "reportName": "testReportName", + "snapshotName": "testSnapshotName" + }, + "responses": { + "200": { + "body": { + "complianceReport": [ + { + "categoryName": "Data Security & Privacy", + "controlFamilyName": "Incident Response", + "controlId": "Operational_Security_75", + "controlName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlStatus": "Passed", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceStatus": "Healthy", + "resourceStatusChangeDate": "2023-01-12T16:17:20.150Z", + "resourceType": "Microsoft.SignalRService/SignalR", + "responsibilityDescription": "Restrict access to the Kubernetes Service Management API by granting API access only to IP addresses in specific ranges. It is recommended to limit access to authorized IP ranges to ensure that only applications from allowed networks can access the cluster.", + "responsibilityTitle": "Authorized IP ranges should be defined on Kubernetes Services" + } + ] + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Snapshots_Download", + "title": "Snapshot_Download_ComplianceReport" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Resource_List.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Resource_List.json new file mode 100644 index 000000000000..34a29b24cf3e --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Resource_List.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "downloadType": "ResourceList", + "offerGuid": "00000000-0000-0000-0000-000000000001", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000" + }, + "reportName": "testReportName", + "snapshotName": "testSnapshotName" + }, + "responses": { + "200": { + "body": { + "resourceList": [ + { + "resourceGroup": "myResourceGroup", + "resourceId": "mySignalRService", + "resourceType": "SignalR", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + } + ] + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Snapshots_Download", + "title": "Snapshot_Download_ResourceList" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Get.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Get.json new file mode 100644 index 000000000000..e0ef0b724d5d --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Get.json @@ -0,0 +1,184 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName", + "snapshotName": "testSnapshot" + }, + "responses": { + "200": { + "body": { + "name": "testSnapshot", + "type": "Microsfot.AppComplianceAutomation/reports/snapshots", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/snapshots/testSnapshot", + "properties": { + "complianceResults": [ + { + "categories": [ + { + "categoryName": "Operational Security", + "categoryStatus": "Passed", + "controlFamilies": [ + { + "controlFamilyName": "Incident Response", + "controlFamilyStatus": "Passed", + "controls": [ + { + "controlDescription": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlDescriptionHyperLink": "https://aka.ms/acat/m365cert/operational/control73", + "controlFullName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlId": "Operational_Security_75", + "controlName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlStatus": "Passed", + "responsibilities": [ + { + "evidenceFiles": [ + "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports/reportABC/fileName?api-version=2024-06-27" + ], + "failedResourceCount": 0, + "guidance": "Please upload the screen capture file to ACAT service.", + "justification": "Here is my evidence files", + "recommendationList": [ + { + "recommendationId": "failed_reason_1", + "recommendationShortName": "Invalid TLS Config", + "recommendationSolutions": [ + { + "isRecommendSolution": "true", + "recommendationSolutionContent": "Setting minimal TLS version to 1.2 improves security by ensuring your SQL Managed Instance can only be accessed from clients using TLS 1.2. Using versions of TLS less than 1.2 is not recommended since they have well documented security vulnerabilities", + "recommendationSolutionIndex": "1" + } + ] + }, + { + "recommendationId": "failed_reason_2", + "recommendationShortName": "Invalid AWS TLS Config", + "recommendationSolutions": [ + { + "isRecommendSolution": "true", + "recommendationSolutionContent": "Open the AWS related service, and set its TLS version to 1.2 or higher version.", + "recommendationSolutionIndex": "1" + } + ] + } + ], + "resourceList": [ + { + "recommendationIds": [ + "failed_reason_1" + ], + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceStatus": "Unhealthy", + "resourceStatusChangeDate": "2023-01-12T16:17:20.150Z", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "recommendationIds": [ + "failed_reason_2" + ], + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceStatus": "Unhealthy", + "resourceStatusChangeDate": "2023-01-12T16:17:20.150Z", + "resourceType": "iam.user" + } + ], + "responsibilityDescription": "Restrict access to the Kubernetes Service Management API by granting API access only to IP addresses in specific ranges. It is recommended to limit access to authorized IP ranges to ensure that only applications from allowed networks can access the cluster.", + "responsibilityEnvironment": "Azure", + "responsibilityId": "authorized_ip_ranges_should_be_defined_on_kubernetes_services", + "responsibilitySeverity": "High", + "responsibilityStatus": "Passed", + "responsibilityTitle": "Authorized IP ranges should be defined on Kubernetes Services", + "responsibilityType": "Automated", + "totalResourceCount": 1 + } + ] + } + ] + } + ] + } + ], + "complianceName": "M365" + } + ], + "createdAt": "2022-03-04T15:33:59.160Z", + "provisioningState": "Succeeded", + "reportProperties": { + "certRecords": [ + { + "certificationStatus": "CertIngestion", + "controls": [ + { + "controlId": "Operational_Security_10", + "controlStatus": "Approved" + } + ], + "ingestionStatus": "EvidenceResubmitted", + "offerGuid": "00000000-0000-0000-0000-000000000001" + } + ], + "complianceStatus": { + "m365": { + "failedCount": 0, + "manualCount": 0, + "passedCount": 0 + } + }, + "errors": [], + "lastTriggerTime": "2022-03-04T15:00:00.000Z", + "nextTriggerTime": "2022-03-04T15:00:00.000Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "provisioningState": "Succeeded", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" + } + ], + "status": "Active", + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "tenantId": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-04T15:00:00.000Z" + }, + "reportSystemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + }, + "snapshotName": "testSnapshot" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Snapshots_Get", + "title": "Snapshot_Get" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_List.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_List.json new file mode 100644 index 000000000000..7274099cf5ab --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_List.json @@ -0,0 +1,194 @@ +{ + "parameters": { + "$skipToken": "1", + "$top": "100", + "api-version": "2024-06-27", + "offerGuid": "00000000-0000-0000-0000-000000000001", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000", + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports/testReportName/snapshots?api-version=2024-06-27&skipToken=1&top=100", + "value": [ + { + "name": "testSnapshot", + "type": "Microsfot.AppComplianceAutomation/reports/snapshots", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/snapshots/testSnapshot", + "properties": { + "complianceResults": [ + { + "categories": [ + { + "categoryName": "Operational Security", + "categoryStatus": "Passed", + "controlFamilies": [ + { + "controlFamilyName": "Incident Response", + "controlFamilyStatus": "Passed", + "controls": [ + { + "controlDescription": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlDescriptionHyperLink": "https://aka.ms/acat/m365cert/operational/control73", + "controlFullName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlId": "Operational_Security_75", + "controlName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlStatus": "Passed", + "responsibilities": [ + { + "evidenceFiles": [ + "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports/reportABC/fileName?api-version=2024-06-27" + ], + "failedResourceCount": 0, + "guidance": "Please upload the screen capture file to ACAT service.", + "justification": "Here is my evidence files", + "recommendationList": [ + { + "recommendationId": "failed_reason_1", + "recommendationShortName": "Invalid TLS Config", + "recommendationSolutions": [ + { + "isRecommendSolution": "true", + "recommendationSolutionContent": "Setting minimal TLS version to 1.2 improves security by ensuring your SQL Managed Instance can only be accessed from clients using TLS 1.2. Using versions of TLS less than 1.2 is not recommended since they have well documented security vulnerabilities", + "recommendationSolutionIndex": "1" + } + ] + }, + { + "recommendationId": "failed_reason_2", + "recommendationShortName": "Invalid AWS TLS Config", + "recommendationSolutions": [ + { + "isRecommendSolution": "true", + "recommendationSolutionContent": "Open the AWS related service, and set its TLS version to 1.2 or higher version.", + "recommendationSolutionIndex": "1" + } + ] + } + ], + "resourceList": [ + { + "recommendationIds": [ + "failed_reason_1" + ], + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceStatus": "Unhealthy", + "resourceStatusChangeDate": "2023-01-12T16:17:20.150Z", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "recommendationIds": [ + "failed_reason_2" + ], + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceStatus": "Unhealthy", + "resourceStatusChangeDate": "2023-01-12T16:17:20.150Z", + "resourceType": "iam.user" + } + ], + "responsibilityDescription": "Restrict access to the Kubernetes Service Management API by granting API access only to IP addresses in specific ranges. It is recommended to limit access to authorized IP ranges to ensure that only applications from allowed networks can access the cluster.", + "responsibilityEnvironment": "Azure", + "responsibilityId": "authorized_ip_ranges_should_be_defined_on_kubernetes_services", + "responsibilitySeverity": "High", + "responsibilityStatus": "Passed", + "responsibilityTitle": "Authorized IP ranges should be defined on Kubernetes Services", + "responsibilityType": "Automated", + "totalResourceCount": 1 + } + ] + } + ] + } + ] + } + ], + "complianceName": "M365" + } + ], + "createdAt": "2022-03-04T15:33:59.160Z", + "provisioningState": "Succeeded", + "reportProperties": { + "certRecords": [ + { + "certificationStatus": "CertIngestion", + "controls": [ + { + "controlId": "Operational_Security_10", + "controlStatus": "Approved" + } + ], + "ingestionStatus": "EvidenceResubmitted", + "offerGuid": "00000000-0000-0000-0000-000000000001" + } + ], + "complianceStatus": { + "m365": { + "failedCount": 0, + "manualCount": 0, + "notApplicableCount": 0, + "passedCount": 0, + "pendingCount": 0 + } + }, + "errors": [], + "lastTriggerTime": "2022-03-04T15:00:00.000Z", + "nextTriggerTime": "2022-03-04T15:00:00.000Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "provisioningState": "Succeeded", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" + } + ], + "status": "Active", + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "tenantId": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-04T15:00:00.000Z" + }, + "reportSystemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + }, + "snapshotName": "testSnapshot" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "Snapshots_List", + "title": "Snapshots_List" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/TriggerEvaluation.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/TriggerEvaluation.json new file mode 100644 index 000000000000..e9fd6273c264 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/TriggerEvaluation.json @@ -0,0 +1,51 @@ +{ + "operationId": "ProviderActions_TriggerEvaluation", + "title": "TriggerEvaluation", + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "resourceIds": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService" + ] + } + }, + "responses": { + "200": { + "body": { + "properties": { + "evaluationEndTime": "2022-03-04T05:10:00.000Z", + "quickAssessments": [ + { + "description": "Protect your storage accounts from potential threats using virtual network rules as a preferred method instead of IP-based filtering. Disabling IP-based filtering prevents public IPs from accessing your storage accounts.", + "displayName": "Storage accounts should restrict network access using virtual network rules", + "remediationLink": "Protect your storage accounts from potential threats using virtual network rules as a preferred method instead of IP-based filtering. Disabling IP-based filtering prevents public IPs from accessing your storage accounts.", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.storage/storageaccounts/storettas3iw2megtcarm", + "resourceStatus": "Healthy", + "responsibilityId": "/providers/microsoft.authorization/policydefinitions/2a1a9cdf-e04d-429a-8416-3bfb72a1b26f", + "timestamp": "2022-03-04T05:00:00.000Z" + }, + { + "description": "", + "displayName": "Secure transfer to storage accounts should be enabled", + "remediationLink": "", + "resourceId": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.storage/storageaccounts/storettas3iw2megtcarm", + "resourceStatus": "Unhealthy", + "responsibilityId": "/providers/Microsoft.Authorization/policyDefinitions/404c3081-a854-4457-ae30-26a93ef643f9", + "timestamp": "2022-03-04T05:00:00.000Z" + } + ], + "resourceIds": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.storage/storageaccounts/storettas3iw2megtcarm" + ], + "triggerTime": "2022-03-04T05:00:00.000Z" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + } +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_CreateOrUpdate.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_CreateOrUpdate.json new file mode 100644 index 000000000000..379f63d3f3fd --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_CreateOrUpdate.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "properties": { + "contentType": "application/json", + "enableSslVerification": "true", + "events": [ + "generate_snapshot_failed" + ], + "payloadUrl": "https://example.com", + "sendAllEvents": "false", + "status": "Enabled", + "updateWebhookKey": "true", + "webhookKey": "00000000-0000-0000-0000-000000000000" + } + }, + "reportName": "testReportName", + "webhookName": "testWebhookName" + }, + "responses": { + "200": { + "body": { + "name": "testWebhookName", + "type": "Microsfot.AppComplianceAutomation/reports/webhooks", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/webhooks/testWebhookName", + "properties": { + "contentType": "application/json", + "deliveryStatus": "Succeeded", + "enableSslVerification": "true", + "events": [ + "generate_snapshot_failed" + ], + "payloadUrl": "https://example.com", + "provisioningState": "Succeeded", + "sendAllEvents": "false", + "status": "Enabled", + "tenantId": "00000000-0000-0000-0000-000000000000", + "webhookId": "00000000-0000-0000-0000-000000000000", + "webhookKeyEnabled": "true" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "name": "testWebhookName", + "type": "Microsfot.AppComplianceAutomation/reports/webhooks", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/webhooks/testWebhookName", + "properties": { + "contentType": "application/json", + "deliveryStatus": "Succeeded", + "enableSslVerification": "true", + "events": [ + "generate_snapshot_failed" + ], + "payloadUrl": "https://example.com", + "provisioningState": "Succeeded", + "sendAllEvents": "false", + "status": "Enabled", + "tenantId": "00000000-0000-0000-0000-000000000000", + "webhookId": "00000000-0000-0000-0000-000000000000", + "webhookKeyEnabled": "true" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Webhooks_CreateOrUpdate", + "title": "Webhook_CreateOrUpdate" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Delete.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Delete.json new file mode 100644 index 000000000000..fd17dfb9e1d3 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName", + "webhookName": "testWebhookName" + }, + "responses": { + "200": {}, + "204": {} + }, + "operationId": "Webhooks_Delete", + "title": "Webhook_Delete" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Get.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Get.json new file mode 100644 index 000000000000..ea6f0c6636c9 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Get.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName", + "webhookName": "testWebhookName" + }, + "responses": { + "200": { + "body": { + "name": "testWebhookName", + "type": "Microsfot.AppComplianceAutomation/reports/webhooks", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/webhooks/testWebhookName", + "properties": { + "contentType": "application/json", + "deliveryStatus": "Succeeded", + "enableSslVerification": "true", + "events": [ + "generate_snapshot_failed" + ], + "payloadUrl": "https://example.com", + "provisioningState": "Succeeded", + "sendAllEvents": "false", + "status": "Enabled", + "tenantId": "00000000-0000-0000-0000-000000000000", + "webhookId": "00000000-0000-0000-0000-000000000000", + "webhookKeyEnabled": "true" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Webhooks_Get", + "title": "Webhook_Get" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_List.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_List.json new file mode 100644 index 000000000000..74019ce2f47f --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_List.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "$skipToken": "1", + "$top": "100", + "api-version": "2024-06-27", + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports/testReportName/webhooks?api-version=2024-06-27&skipToken=1&top=100", + "value": [ + { + "name": "testWebhookName", + "type": "Microsfot.AppComplianceAutomation/reports/webhooks", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/snapshots/testWebhookName", + "properties": { + "contentType": "application/json", + "deliveryStatus": "Succeeded", + "enableSslVerification": "true", + "events": [ + "generate_snapshot_failed" + ], + "payloadUrl": "https://example.com", + "provisioningState": "Succeeded", + "sendAllEvents": "false", + "status": "Enabled", + "tenantId": "00000000-0000-0000-0000-000000000000", + "webhookId": "00000000-0000-0000-0000-000000000000", + "webhookKeyEnabled": "false" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "Webhooks_List", + "title": "Webhooks_List" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Update.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Update.json new file mode 100644 index 000000000000..4fe5b96af53e --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Update.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "properties": { + "contentType": "application/json", + "enableSslVerification": "true", + "events": [ + "generate_snapshot_failed" + ], + "payloadUrl": "https://example.com", + "sendAllEvents": "false", + "status": "Enabled", + "updateWebhookKey": "true", + "webhookKey": "00000000-0000-0000-0000-000000000000" + } + }, + "reportName": "testReportName", + "webhookName": "testWebhookName" + }, + "responses": { + "200": { + "body": { + "name": "testWebhookName", + "type": "Microsfot.AppComplianceAutomation/reports/webhooks", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/testWebhookName", + "properties": { + "contentType": "application/json", + "deliveryStatus": "Succeeded", + "enableSslVerification": "true", + "events": [ + "generate_snapshot_failed" + ], + "payloadUrl": "https://example.com", + "provisioningState": "Succeeded", + "sendAllEvents": "false", + "status": "Enabled", + "tenantId": "00000000-0000-0000-0000-000000000000", + "webhookId": "00000000-0000-0000-0000-000000000000", + "webhookKeyEnabled": "true" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Webhooks_Update", + "title": "Webhook_Update" +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp new file mode 100644 index 000000000000..af91de8e1bc6 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp @@ -0,0 +1,40 @@ +import "@typespec/rest"; +import "@typespec/versioning"; +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "./models/models.tsp"; +import "./resources/ReportResource.tsp"; +import "./resources/WebhookResource.tsp"; +import "./resources/SnapshotResource.tsp"; +import "./resources/ScopingConfigurationResource.tsp"; +import "./resources/EvidenceResource.tsp"; +import "./routes.tsp"; + +using TypeSpec.Rest; +using TypeSpec.Http; +using Azure.ResourceManager.Foundations; +using Azure.Core; +using Azure.ResourceManager; +using TypeSpec.Versioning; +/** + * App Compliance Automation Tool for Microsoft 365 API spec + */ +@armProviderNamespace +@service({ + title: "App Compliance Automation Tool for Microsoft 365", +}) +@versioned(Versions) +@armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v3) +namespace Microsoft.AppComplianceAutomation; + +/** + * The available API versions. + */ +enum Versions { + /** + * The 2024-06-27 API version. + */ + @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1) + @useDependency(Azure.Core.Versions.v1_0_Preview_1) + v2024_05_14: "2024-06-27", +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp new file mode 100644 index 000000000000..99e3c07316e4 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp @@ -0,0 +1,1879 @@ +import "../main.tsp"; +import "@typespec/rest"; +import "@typespec/http"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@azure-tools/typespec-client-generator-core"; +import "@azure-tools/typespec-azure-core"; +import "@typespec/openapi"; + +using TypeSpec.Rest; +using TypeSpec.Http; +using Azure.ResourceManager; +using Azure.ResourceManager.Foundations; +using OpenAPI; +using Azure.Core; + +namespace Microsoft.AppComplianceAutomation; + +/** + * Indicates the resource status. + */ +union ResourceStatus { + @doc("The resource is healthy.") + Healthy: "Healthy", + + @doc("The resource is unhealthy.") + Unhealthy: "Unhealthy", + + string, +} + +/** + * Report status. + */ +union ReportStatus { + @doc("The report is active.") + Active: "Active", + + @doc("The report is failed.") + Failed: "Failed", + + @doc("The report is under reviewing.") + Reviewing: "Reviewing", + + @doc("The report is disabled.") + Disabled: "Disabled", + + string, +} + +/** + * Resource Origin. + */ +union ResourceOrigin { + @doc("The resource is from Azure.") + Azure: "Azure", + + @doc("The resource is from AWS.") + AWS: "AWS", + + @doc("The resource is from GCP.") + GCP: "GCP", + + string, +} + +/** + * Resource provisioning states. + */ +union ProvisioningState { + @doc("The provision is succeeded.") + Succeeded: "Succeeded", + + @doc("The provision is failed.") + Failed: "Failed", + + @doc("The provision is canceled.") + Canceled: "Canceled", + + @doc("The creation is in progress.") + Creating: "Creating", + + @doc("The deletion is in progress.") + Deleting: "Deleting", + + @doc("The fix of the resource in progress.") + Fixing: "Fixing", + + @doc("The verification of the resource in progress.") + Verifying: "Verifying", + + @doc("The update of the resource in progress.") + Updating: "Updating", + + string, +} + +/** + * Webhook status. + */ +union WebhookStatus { + @doc("The webhook is enabled.") + Enabled: "Enabled", + + @doc("The webhook is disabled.") + Disabled: "Disabled", + + string, +} + +/** + * whether to send notification under any event. + */ +union SendAllEvents { + @doc("Need send notification under any event.") + True: "true", + + @doc("No need to send notification under any event.") + False: "false", + + string, +} + +/** + * notification event. + */ +union NotificationEvent { + @doc("The subscribed report's snapshot is successfully generated.") + generate_snapshot_success: "generate_snapshot_success", + + @doc("The subscribed report's snapshot is failed to generate.") + generate_snapshot_failed: "generate_snapshot_failed", + + @doc("The subscribed report failed while collecting the assessments.") + assessment_failure: "assessment_failure", + + @doc("The subscribed report's configuration is changed.") + report_configuration_changes: "report_configuration_changes", + + @doc("The subscribed report is deleted.") + report_deletion: "report_deletion", + + string, +} + +/** + * content type + */ +union ContentType { + @doc("The content type is application/json.") + ApplicationJson: "application/json", + + string, +} + +/** + * whether to update webhookKey. + */ +union UpdateWebhookKey { + @doc("Need update the webhook key.") + True: "true", + + @doc("No need to update the webhook key.") + False: "false", + + string, +} + +/** + * whether webhookKey is enabled. + */ +union WebhookKeyEnabled { + @doc("The webhookKey is enabled.") + True: "true", + + @doc("The webhookKey is not enabled.") + False: "false", + + string, +} + +/** + * whether to enable ssl verification + */ +union EnableSslVerification { + @doc("The ssl verification is enabled.") + True: "true", + + @doc("The ssl verification is not enabled.") + False: "false", + + string, +} + +/** + * webhook deliveryStatus + */ +union DeliveryStatus { + @doc("The webhook is delivered successfully.") + Succeeded: "Succeeded", + + @doc("The webhook is failed to deliver.") + Failed: "Failed", + + @doc("The webhook is not delivered.") + NotStarted: "NotStarted", + + string, +} + +/** + * Indicates the category status. + */ +union CategoryStatus { + @doc("The category is passed.") + Passed: "Passed", + + @doc("The category is failed.") + Failed: "Failed", + + @doc("The category is not applicable.") + NotApplicable: "NotApplicable", + + @doc("The category is pending for approval.") + PendingApproval: "PendingApproval", + + string, +} + +/** + * Indicates the control family status. + */ +union ControlFamilyStatus { + @doc("The control family is passed.") + Passed: "Passed", + + @doc("The control family is failed.") + Failed: "Failed", + + @doc("The control family is not applicable.") + NotApplicable: "NotApplicable", + + @doc("The control family is pending for approval.") + PendingApproval: "PendingApproval", + + string, +} + +/** + * Indicates the control status. + */ +union ControlStatus { + @doc("The control is passed.") + Passed: "Passed", + + @doc("The control is failed.") + Failed: "Failed", + + @doc("The control is not applicable.") + NotApplicable: "NotApplicable", + + @doc("The control is pending for approval.") + PendingApproval: "PendingApproval", + + string, +} + +/** + * Indicates the customer responsibility type. + */ +union ResponsibilityType { + @doc("The responsibility is automated.") + Automated: "Automated", + + @doc("The responsibility is scoped manual.") + ScopedManual: "ScopedManual", + + @doc("The responsibility is manual.") + Manual: "Manual", + + string, +} + +/** + * Indicates the customer responsibility severity. + */ +union ResponsibilitySeverity { + @doc("The responsibility is high severity.") + High: "High", + + @doc("The responsibility is medium severity.") + Medium: "Medium", + + @doc("The responsibility is low severity.") + Low: "Low", + + string, +} + +/** + * Indicates the customer responsibility status. + */ +union ResponsibilityStatus { + @doc("The responsibility is passed.") + Passed: "Passed", + + @doc("The responsibility is failed.") + Failed: "Failed", + + @doc("The responsibility is not applicable.") + NotApplicable: "NotApplicable", + + @doc("The responsibility is pending for approval.") + PendingApproval: "PendingApproval", + + string, +} + +/** + * Indicates the customer responsibility supported cloud environment. + */ +union ResponsibilityEnvironment { + @doc("The responsibility is supported in Azure.") + Azure: "Azure", + + @doc("The responsibility is supported in AWS.") + AWS: "AWS", + + @doc("The responsibility is supported in GCP.") + GCP: "GCP", + + @doc("The responsibility is general requirement of all environment.") + General: "General", + + string, +} + +/** + * Indicates whether this solution is the recommended. + */ +union IsRecommendSolution { + @doc("This solution is the recommended.") + True: "true", + + @doc("This solution is not the recommended.") + False: "false", + + string, +} + +/** + * Indicates the download type. + */ +union DownloadType { + @doc("Download the compliance report.") + ComplianceReport: "ComplianceReport", + + @doc("Download the compliance pdf report.") + CompliancePdfReport: "CompliancePdfReport", + + @doc("Download the detailed compliance pdf report.") + ComplianceDetailedPdfReport: "ComplianceDetailedPdfReport", + + @doc("Download the resource list of the report.") + ResourceList: "ResourceList", + + string, +} + +/** + * Evidence type + */ +union EvidenceType { + @doc("The evidence is a file.") + File: "File", + + @doc("The evidence auto collected by App Compliance Automation.") + AutoCollectedEvidence: "AutoCollectedEvidence", + + @doc("The evidence is data.") + Data: "Data", + + string, +} + +/** + * Indicates whether the fix action is Succeeded or Failed. + */ +union Result { + @doc("The result is succeeded.") + Succeeded: "Succeeded", + + @doc("The result is failed.") + Failed: "Failed", + + string, +} + +/** + * Scoping question rule. + */ +union Rule { + @doc("The question is required to answer.") + Required: "Required", + + @doc("The question answer length is limited.") + CharLength: "CharLength", + + @doc("The question answer should be an Url.") + Url: "Url", + + @doc("The question answer should be Urls.") + Urls: "Urls", + + @doc("The question answer should be domains.") + Domains: "Domains", + + @doc("The question answer should be a UsPrivacyShield.") + USPrivacyShield: "USPrivacyShield", + + @doc("The question answer should be a PublicSOX.") + PublicSOX: "PublicSOX", + + @doc("The question answer should be a FismaFedramp.") + FismaFedramp: "FismaFedramp", + + @doc("The question answer should be a CreditCardPCI.") + CreditCardPCI: "CreditCardPCI", + + @doc("The question answer should be an AzureApplication.") + AzureApplication: "AzureApplication", + + @doc("The question answer should be a valid guid.") + ValidGuid: "ValidGuid", + + @doc("The question answer should be publisher verification.") + PublisherVerification: "PublisherVerification", + + @doc("The question answer should be dynamic dropdown.") + DynamicDropdown: "DynamicDropdown", + + @doc("The question answer should prevent non-english char.") + PreventNonEnglishChar: "PreventNonEnglishChar", + + @doc("The question answer should be a valid email.") + ValidEmail: "ValidEmail", + + string, +} + +/** + * Question input type. + */ +union InputType { + @doc("The input type is a text box.") + None: "None", + + @doc("The input content is text string.") + Text: "Text", + + @doc("The input content should be an email address.") + Email: "Email", + + @doc("The input content should be multiline text.") + MultilineText: "MultilineText", + + @doc("The input content should be a URL.") + Url: "Url", + + @doc("The input content should be a number.") + Number: "Number", + + @doc("The input content should be a boolean.") + Boolean: "Boolean", + + @doc("The input content should be a telephone number.") + Telephone: "Telephone", + + @doc("The input content should be Yes, No or Na.") + YesNoNa: "YesNoNa", + + @doc("The input content should be a date.") + Date: "Date", + + @doc("The input content is a Year, pick from the dropdown list.") + YearPicker: "YearPicker", + + @doc("The input content is a single result seleted from the options.") + SingleSelection: "SingleSelection", + + @doc("The input content is a single result seleted from the dropdown options.") + SingleSelectDropdown: "SingleSelectDropdown", + + @doc("The input content are multiple results seleted from the checkboxes.") + MultiSelectCheckbox: "MultiSelectCheckbox", + + @doc("The input content are multiple results seleted from the dropdown options.") + MultiSelectDropdown: "MultiSelectDropdown", + + @doc("The input content are result seleted from the custom dropdown options.") + MultiSelectDropdownCustom: "MultiSelectDropdownCustom", + + @doc("The input content is a group of answers.") + Group: "Group", + + @doc("The input content is a uploaded file.") + Upload: "Upload", + + string, +} + +/** + * The get collection count request body. + */ +@doc("Get collection count's request object.") +model GetCollectionCountRequest { + /** + * The resource type. + */ + type?: string; +} + +/** + * The get collection count response. + */ +model GetCollectionCountResponse { + /** + * The count of the specified resource. + */ + count?: int32; +} + +/** + * The get overview status request body. + */ +@doc("Get overview status request object.") +model GetOverviewStatusRequest { + /** + * The resource type. + */ + type?: string; +} + +/** + * The get overview status response. + */ +model GetOverviewStatusResponse { + /** + * List of different status items. + */ + @extension("x-ms-identifiers", ["statusName"]) + statusList?: StatusItem[]; +} + +/** + * Single status. + */ +model StatusItem { + /** + * Status name - e.g. "Active", "Failed". + */ + statusName?: string; + + /** + * Status value. e.g. "100", or "100%". + */ + statusValue?: string; +} + +/** + * Onboard subscriptions request. + */ +@doc("Parameters for onboard operation") +model OnboardRequest { + /** + * List of subscription ids to be onboarded + */ + subscriptionIds: string[]; +} + +/** + * Onboard subscriptions response. + */ +@doc("Success. The response indicates given subscriptions has been onboarded.") +model OnboardResponse { + /** + * List of subscription ids that are onboarded + */ + subscriptionIds?: string[]; +} + +/** + * Trigger evaluation request. + */ +model TriggerEvaluationRequest { + /** + * List of resource ids to be evaluated + */ + resourceIds: string[]; +} + +/** + * Trigger evaluation response. + */ +model TriggerEvaluationResponse { + /** + * trigger evaluation property. + */ + properties?: TriggerEvaluationProperty; +} + +/** + * Trigger evaluation response. + */ +model TriggerEvaluationProperty { + /** + * The time when the evaluation is triggered. + */ + @visibility("read") + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + triggerTime?: utcDateTime; + + /** + * The time when the evaluation is end. + */ + @visibility("read") + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + evaluationEndTime?: utcDateTime; + + /** + * List of resource ids to be evaluated + */ + @extension("x-ms-identifiers", ["resourceId"]) + resourceIds?: string[]; + + /** + * List of quick assessments + */ + @extension("x-ms-identifiers", ["resourceId"]) + quickAssessments?: QuickAssessment[]; +} + +/** + * A class represent the quick assessment. + */ +model QuickAssessment { + /** + * Resource id. + */ + @visibility("read") + resourceId?: string; + + /** + * Responsibility id. + */ + @visibility("read") + responsibilityId?: string; + + /** + * The timestamp of resource creation (UTC). + */ + @visibility("read") + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + timestamp?: utcDateTime; + + /** + * Quick assessment status. + */ + @visibility("read") + resourceStatus?: ResourceStatus; + + /** + * Quick assessment display name. + */ + @visibility("read") + displayName?: string; + + /** + * Quick assessment display name. + */ + @visibility("read") + description?: string; + + /** + * Link to remediation steps for this quick assessment. + */ + @visibility("read") + remediationLink?: string; +} + +/** + * List in use storage accounts request. + */ +@doc("Parameters for listing in use storage accounts operation. If subscription list is null, it will check the user's all subscriptions.") +model ListInUseStorageAccountsRequest { + /** + * List of subscription ids to be query. If the list is null or empty, the API will query all the subscriptions of the user. + */ + subscriptionIds?: string[]; +} + +/** + * List in use storage accounts response. + */ +@doc("Parameters for listing in use storage accounts operation. If subscription list is null, it will check the user's all subscriptions.") +model ListInUseStorageAccountsResponse { + /** + * The storage account list which in use in related reports. + */ + @extension("x-ms-identifiers", ["accountName"]) + storageAccountList?: StorageInfo[]; +} + +/** + * The information of 'bring your own storage' account binding to the report + */ +model StorageInfo { + /** + * The subscription id which 'bring your own storage' account belongs to + */ + subscriptionId?: string; + + /** + * The resourceGroup which 'bring your own storage' account belongs to + */ + resourceGroup?: string; + + /** + * 'bring your own storage' account name + */ + accountName?: string; + + /** + * The region of 'bring your own storage' account + */ + location?: string; +} + +/** + * Report's properties. + */ +model ReportBaseProperties { + /** + * Report status. + */ + @visibility("read") + status?: ReportStatus; + + /** + * List of report error codes. + */ + @visibility("read") + errors?: string[]; + + /** + * Report's tenant id. + */ + @visibility("read") + tenantId?: string; + + /** + * A list of comma-separated offerGuids indicates a series of offerGuids that map to the report. For example, "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002" and "00000000-0000-0000-0000-000000000003". + */ + offerGuid?: string; + + /** + * Report next collection trigger time. + */ + @visibility("read") + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + nextTriggerTime?: utcDateTime; + + /** + * Report last collection trigger time. + */ + @visibility("read") + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + lastTriggerTime?: utcDateTime; + + /** + * List of subscription Ids. + */ + @visibility("read") + subscriptions?: string[]; + + /** + * Report compliance status. + */ + @visibility("read") + complianceStatus?: ReportComplianceStatus; + + /** + * The information of 'bring your own storage' binding to the report + */ + storageInfo?: StorageInfo; + + /** + * List of synchronized certification records. + */ + @visibility("read") + @extension("x-ms-identifiers", ["offerGuid"]) + certRecords?: CertSyncRecord[]; + + /** + * Azure lifecycle management + */ + @visibility("read") + provisioningState?: ProvisioningState; +} + +/** + * Create Report's properties. + */ +model ReportProperties { + /** + * Report collection trigger time. + */ + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + triggerTime: utcDateTime; + + /** + * Report collection trigger time's time zone, the available list can be obtained by executing "Get-TimeZone -ListAvailable" in PowerShell. + * An example of valid timezone id is "Pacific Standard Time". + */ + timeZone: string; + + /** + * List of resource data. + */ + @extension("x-ms-identifiers", ["resourceId"]) + resources: ResourceMetadata[]; + + ...ReportBaseProperties; +} + +/** + * Patch Report's properties. + */ +model ReportPatchProperties { + /** + * Report collection trigger time. + */ + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + triggerTime?: utcDateTime; + + /** + * Report collection trigger time's time zone, the available list can be obtained by executing "Get-TimeZone -ListAvailable" in PowerShell. + * An example of valid timezone id is "Pacific Standard Time". + */ + timeZone?: string; + + /** + * List of resource data. + */ + @extension("x-ms-identifiers", ["resourceId"]) + resources?: ResourceMetadata[]; + + ...ReportBaseProperties; +} + +/** + * Single resource Id's metadata. + */ +model ResourceMetadata { + /** + * Resource Id - e.g. "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1". + */ + resourceId: string; + + /** + * Resource type. e.g. "Microsoft.Compute/virtualMachines" + */ + resourceType?: string; + + /** + * Resource kind. + */ + resourceKind?: string; + + /** + * Resource Origin. + */ + resourceOrigin?: ResourceOrigin; + + /** + * Account Id. For example - the AWS account id. + */ + accountId?: string; +} + +/** + * A list which includes all the compliance result for one report. + */ +model ReportComplianceStatus { + /** + * The Microsoft 365 certification name. + */ + @visibility("read") + m365?: OverviewStatus; +} + +/** + * The overview of the compliance result for one report. + */ +model OverviewStatus { + /** + * The count of all passed control. + */ + @visibility("read") + passedCount?: int32; + + /** + * The count of all failed control. + */ + @visibility("read") + failedCount?: int32; + + /** + * The count of all manual control. + */ + @visibility("read") + manualCount?: int32; + + /** + * The count of all not applicable control. + */ + @visibility("read") + notApplicableCount?: int32; + + /** + * The count of all pending for approval control. + */ + @visibility("read") + pendingCount?: int32; +} + +/** + * A class represent the certification record synchronized from app compliance. + */ +model CertSyncRecord { + /** + * The offerGuid which mapping to the reports. + */ + @minLength(1) + offerGuid?: string; + + /** + * Indicates the status of certification process. + */ + certificationStatus?: string; + + /** + * Indicates the status of compliance process. + */ + ingestionStatus?: string; + + /** + * The control records list to be synchronized. + */ + @extension("x-ms-identifiers", ["controlId"]) + controls?: ControlSyncRecord[]; +} + +/** + * A class represent the control record synchronized from app compliance. + */ +model ControlSyncRecord { + /** + * The Id of the control. e.g. "Operational_Security_10" + */ + controlId?: string; + + /** + * Control status synchronized from app compliance. + */ + controlStatus?: string; +} + +/** + * A class represent a AppComplianceAutomation report resource update properties. + */ +model ReportResourcePatch { + /** + * Report property. + */ + properties?: ReportPatchProperties; +} + +/** + * Synchronize certification record request. + */ +model SyncCertRecordRequest { + /** + * certification record to be synchronized. + */ + certRecord: CertSyncRecord; +} + +/** + * Synchronize certification record response. + */ +model SyncCertRecordResponse { + /** + * certification record synchronized. + */ + certRecord?: CertSyncRecord; +} + +/** + * Webhook properties. + */ +model WebhookProperties { + /** + * Webhook id in database. + */ + @visibility("read") + webhookId?: string; + + /** + * Webhook status. + */ + status?: WebhookStatus; + + /** + * Tenant id. + */ + @visibility("read") + tenantId?: string; + + /** + * whether to send notification under any event. + */ + sendAllEvents?: SendAllEvents; + + /** + * under which event notification should be sent. + */ + events?: NotificationEvent[]; + + /** + * webhook payload url + */ + @pattern("^(http(s)?://)[\\S]{0,64994}$") + payloadUrl?: string; + + /** + * content type + */ + contentType?: ContentType; + + /** + * webhook secret token. If not set, this field value is null; otherwise, please set a string value. + */ + @pattern("^.{0,2048}$") + webhookKey?: string; + + /** + * whether to update webhookKey. + */ + updateWebhookKey?: UpdateWebhookKey; + + /** + * whether webhookKey is enabled. + */ + @visibility("read") + webhookKeyEnabled?: WebhookKeyEnabled; + + /** + * whether to enable ssl verification + */ + enableSslVerification?: EnableSslVerification; + + /** + * webhook deliveryStatus + */ + @visibility("read") + deliveryStatus?: DeliveryStatus; + + /** + * Azure Resource Provisioning State + */ + @visibility("read") + provisioningState?: ProvisioningState; +} + +/** + * A class represent a AppComplianceAutomation webhook resource update properties. + */ +model WebhookResourcePatch { + /** + * Webhook property. + */ + properties?: WebhookProperties; +} + +/** + * Snapshot's properties. + */ +model SnapshotProperties { + /** + * Snapshot name. + */ + @visibility("read") + snapshotName?: string; + + /** + * The timestamp of resource creation (UTC). + */ + @visibility("read") + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + createdAt?: utcDateTime; + + /** + * Azure lifecycle management + */ + @visibility("read") + provisioningState?: ProvisioningState; + + /** + * The report essential info. + */ + @visibility("read") + reportProperties?: ReportProperties; + + /** + * Metadata pertaining to creation and last modification of the resource. + */ + @visibility("read") + reportSystemData?: SystemData; + + /** + * List of compliance results. + */ + @visibility("read") + @extension("x-ms-identifiers", ["complianceName"]) + complianceResults?: ComplianceResult[]; +} + +/** + * A class represent the compliance result. + */ +model ComplianceResult { + /** + * The name of the compliance. e.g. "M365" + */ + @visibility("read") + complianceName?: string; + + /** + * List of categories. + */ + @visibility("read") + @extension("x-ms-identifiers", ["categoryName"]) + categories?: Category[]; +} + +/** + * A class represent the compliance category. + */ +model Category { + /** + * The name of the compliance category. e.g. "Operational Security" + */ + @visibility("read") + categoryName?: string; + + /** + * Category status. + */ + @visibility("read") + categoryStatus?: CategoryStatus; + + /** + * List of control families. + */ + @visibility("read") + @extension("x-ms-identifiers", ["controlFamilyName"]) + controlFamilies?: ControlFamily[]; +} + +/** + * A class represent the control family. + */ +model ControlFamily { + /** + * The name of the control family. e.g. "Malware Protection - Anti-Virus" + */ + @visibility("read") + controlFamilyName?: string; + + /** + * The control family status + */ + @visibility("read") + controlFamilyStatus?: ControlFamilyStatus; + + /** + * List of controls. + */ + @visibility("read") + @extension("x-ms-identifiers", ["controlId"]) + controls?: Control[]; +} + +/** + * A class represent the control. + */ +model Control { + /** + * The Id of the control. e.g. "Operational_Security_10" + */ + @visibility("read") + controlId?: string; + + /** + * The name of the control. e.g. "Unsupported OS and Software." + */ + @visibility("read") + controlName?: string; + + /** + * The full name of the control. e.g. "Validate that unsupported operating systems and software components are not in use." + */ + @visibility("read") + controlFullName?: string; + + /** + * The control's description + */ + @visibility("read") + controlDescription?: string; + + /** + * The hyper link to the control's description'. + */ + @visibility("read") + controlDescriptionHyperLink?: string; + + /** + * Control status. + */ + @visibility("read") + controlStatus?: ControlStatus; + + /** + * List of customer responsibility. + */ + @visibility("read") + @extension("x-ms-identifiers", ["responsibilityId"]) + responsibilities?: Responsibility[]; +} + +/** + * A class represent the customer responsibility. + */ +model Responsibility { + /** + * The id of the customer responsibility. + */ + @visibility("read") + responsibilityId?: string; + + /** + * The title of the customer responsibility. + */ + @visibility("read") + responsibilityTitle?: string; + + /** + * The description of the customer responsibility. + */ + @visibility("read") + responsibilityDescription?: string; + + /** + * The type of customer responsibility. + */ + @visibility("read") + responsibilityType?: ResponsibilityType; + + /** + * The severity level of this customer responsibility. + */ + @visibility("read") + responsibilitySeverity?: ResponsibilitySeverity; + + /** + * The status of this customer responsibility. + */ + @visibility("read") + responsibilityStatus?: ResponsibilityStatus; + + /** + * The supported cloud environment of this customer responsibility. + */ + @visibility("read") + responsibilityEnvironment?: ResponsibilityEnvironment; + + /** + * The count of all failed resources. + */ + failedResourceCount?: int32; + + /** + * The count of all resources. + */ + totalResourceCount?: int32; + + /** + * List of resource. + */ + @visibility("read") + @extension("x-ms-identifiers", ["resourceId"]) + resourceList?: ResponsibilityResource[]; + + /** + * List of recommendation. + */ + @visibility("read") + @extension("x-ms-identifiers", ["recommendationId"]) + recommendationList?: Recommendation[]; + + /** + * The evidence upload guidance description. + */ + @visibility("read") + guidance?: string; + + /** + * The justification given by the user to clarify the reason. + */ + @visibility("read") + justification?: string; + + /** + * List of evidence file url. + */ + evidenceFiles?: string[]; +} + +/** + * A class represent the resource. + */ +model ResponsibilityResource { + /** + * The Id of the resource. + */ + @visibility("read") + resourceId?: string; + + /** + * Account Id. For example - AWS account Id. + */ + @visibility("read") + accountId?: string; + + /** + * The type of the resource. e.g. "Microsoft.SignalRService/SignalR" + */ + @visibility("read") + resourceType?: string; + + /** + * Resource origin. + */ + @visibility("read") + resourceOrigin?: ResourceOrigin; + + /** + * Resource status. + */ + @visibility("read") + resourceStatus?: ResourceStatus; + + /** + * The status change date for the resource. + */ + @visibility("read") + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + resourceStatusChangeDate?: utcDateTime; + + /** + * List of recommendation id. + */ + recommendationIds?: string[]; +} + +/** + * A class represent the recommendation. + */ +model Recommendation { + /** + * The Id of the recommendation. + */ + @visibility("read") + recommendationId?: string; + + /** + * The short name of the recommendation. e.g. "Invalid TLS config" + */ + @visibility("read") + recommendationShortName?: string; + + /** + * List of recommendation solutions. + */ + @visibility("read") + @extension("x-ms-identifiers", ["recommendationSolutionIndex"]) + recommendationSolutions?: RecommendationSolution[]; +} + +/** + * A class represent the recommendation solution. + */ +model RecommendationSolution { + /** + * The index of the recommendation solution. + */ + @visibility("read") + recommendationSolutionIndex?: string; + + /** + * The detail steps of the recommendation solution. + */ + @visibility("read") + recommendationSolutionContent?: string; + + /** + * Indicates whether this solution is the recommended. + */ + @visibility("read") + isRecommendSolution?: IsRecommendSolution; +} + +/** + * Snapshot's download request. + */ +model SnapshotDownloadRequest { + /** + * Tenant id. + */ + reportCreatorTenantId?: string; + + /** + * Indicates the download type. + */ + downloadType: DownloadType; + + /** + * The offerGuid which mapping to the reports. + */ + @minLength(1) + offerGuid?: string; +} + +/** + * Object that includes all the possible response for the download operation. + */ +model DownloadResponse { + /** + * Resource list of the report + */ + @visibility("read") + @extension("x-ms-identifiers", ["resourceId"]) + resourceList?: ResourceItem[]; + + /** + * List of the compliance result + */ + @visibility("read") + @extension("x-ms-identifiers", ["controlId"]) + complianceReport?: ComplianceReportItem[]; + + /** + * Compliance pdf report + */ + @visibility("read") + compliancePdfReport?: DownloadResponseCompliancePdfReport; + + /** + * The detailed compliance pdf report + */ + @visibility("read") + complianceDetailedPdfReport?: DownloadResponseComplianceDetailedPdfReport; +} + +/** + * Resource Id. + */ +model ResourceItem { + /** + * The subscription Id of this resource. + */ + @visibility("read") + subscriptionId?: string; + + /** + * The resource group name of this resource. + */ + @visibility("read") + resourceGroup?: string; + + /** + * The resource type of this resource. e.g. "Microsoft.SignalRService/SignalR" + */ + @visibility("read") + resourceType?: string; + + /** + * The resource Id - e.g. "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1". + */ + @visibility("read") + resourceId?: string; +} + +/** + * Object that includes all the content for single compliance result. + */ +model ComplianceReportItem { + /** + * The category name. + */ + @visibility("read") + categoryName?: string; + + /** + * The control family name. + */ + @visibility("read") + controlFamilyName?: string; + + /** + * The control Id - e.g. "1". + */ + @visibility("read") + controlId?: string; + + /** + * The control name. + */ + @visibility("read") + controlName?: string; + + /** + * Control status. + */ + @visibility("read") + controlStatus?: ControlStatus; + + /** + * The title of the customer responsibility. + */ + @visibility("read") + responsibilityTitle?: string; + + /** + * The description of the customer responsibility. + */ + @visibility("read") + responsibilityDescription?: string; + + /** + * The Id of the resource. + */ + @visibility("read") + resourceId?: string; + + /** + * The type of the resource. e.g. "Microsoft.SignalRService/SignalR" + */ + @visibility("read") + resourceType?: string; + + /** + * Resource origin. + */ + @visibility("read") + resourceOrigin?: ResourceOrigin; + + /** + * Resource status. + */ + @visibility("read") + resourceStatus?: ResourceStatus; + + /** + * The status change date for the resource. + */ + @visibility("read") + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + resourceStatusChangeDate?: utcDateTime; +} + +/** + * Compliance pdf report + */ +model DownloadResponseCompliancePdfReport { + /** + * The uri of compliance pdf report + */ + @visibility("read") + sasUri?: string; +} + +/** + * The detailed compliance pdf report + */ +model DownloadResponseComplianceDetailedPdfReport { + /** + * The uri of detailed compliance pdf report + */ + @visibility("read") + sasUri?: string; +} + +/** + * ScopingConfiguration's properties. + */ +model ScopingConfigurationProperties { + /** + * List of scoping question answers. + */ + @extension("x-ms-identifiers", ["questionId"]) + answers?: ScopingAnswer[]; + + /** + * Azure lifecycle management + */ + @visibility("read") + provisioningState?: ProvisioningState; +} + +/** + * Scoping question list. + */ +model ScopingQuestions { + /** + * List of scoping questions. + */ + @extension("x-ms-identifiers", ["questionId"]) + questions?: ScopingQuestion[]; +} + +/** + * The definition of a scoping question. + */ +model ScopingQuestion { + /** + * Question id. + */ + @visibility("read") + questionId?: string; + + /** + * Superior question id. + */ + @visibility("read") + superiorQuestionId?: string; + + /** + * Input type of the question answer. + */ + @visibility("read") + inputType?: InputType; + + /** + * Option id list. + */ + @visibility("read") + optionIds?: string[]; + + /** + * The rule of the question. + */ + @visibility("read") + rules?: Rule[]; + + /** + * The answer value to show the sub questions. + */ + @visibility("read") + showSubQuestionsValue?: string; +} + +/** + * Scoping answer. + */ +model ScopingAnswer { + /** + * Question id. + */ + @pattern("^[-a-zA-Z0-9_]{1,50}$") + questionId: string; + + /** + * Question answer value list. + */ + answers: string[]; +} + +/** + * Evidence's properties. + */ +model EvidenceProperties { + /** + * Evidence type. + */ + evidenceType?: EvidenceType; + + /** + * The path of the file in storage. + */ + filePath: string; + + /** + * Extra data considered as evidence. + */ + extraData?: string; + + /** + * Control id. + */ + controlId?: string; + + /** + * Responsibility id. + */ + responsibilityId?: string; + + /** + * Azure lifecycle management + */ + @visibility("read") + provisioningState?: ProvisioningState; +} + +/** + * Evidence file's download request. + */ +model EvidenceFileDownloadRequest { + /** + * Tenant id. + */ + reportCreatorTenantId?: string; + + /** + * The offerGuid which mapping to the reports. + */ + @minLength(1) + offerGuid?: string; +} + +/** + * Object that includes all the possible response for the evidence file download operation. + */ +model EvidenceFileDownloadResponse { + /** + * The uri of evidence file + */ + @visibility("read") + evidenceFile?: EvidenceFileDownloadResponseEvidenceFile; +} + +/** + * The uri of evidence file + */ +model EvidenceFileDownloadResponseEvidenceFile { + /** + * The url of evidence file + */ + @visibility("read") + url?: string; +} + +/** + * Report fix result. + */ +model ReportFixResult { + /** + * Indicates whether the fix action is Succeeded or Failed. + */ + @visibility("read") + result?: Result; + + /** + * If the report fix action failed, to indicate the detailed failed reason. + */ + @visibility("read") + reason?: string; +} + +/** + * Report health status verification result. + */ +model ReportVerificationResult { + /** + * Indicates whether the report verification action is Succeeded or Failed. + */ + @visibility("read") + result?: Result; + + /** + * If the report verification action failed, to indicate the detailed failed reason. + */ + @visibility("read") + reason?: string; +} + +/** + * Query parameters for list operations. + */ +model QueryParameters { + /** + * Skip over when retrieving results. + */ + @query("$skipToken") + skipToken?: string; + + /** + * Number of elements to return when retrieving results. + */ + @maxValue(100) + @minValue(1) + @query("$top") + top?: int32; + + /** + * OData Select statement. Limits the properties on each entry to just those requested, e.g. ?$select=reportName,id. + */ + @minLength(1) + @query("$select") + select?: string; + + /** + * The filter to apply on the operation. + */ + @minLength(1) + @query("$filter") + filter?: string; + + /** + * OData order by query option. + */ + @minLength(1) + @query("$orderby") + orderby?: string; + + /** + * The offerGuid which mapping to the reports. + */ + @minLength(1) + @query("offerGuid") + offerGuid?: string; + + /** + * The tenant id of the report creator. + */ + @minLength(1) + @query("reportCreatorTenantId") + reportCreatorTenantId?: string; +} + +/** + * Extra parameters for app compliance. + */ +model ExtraParameter { + /** + * The offerGuid which mapping to the reports. + */ + @minLength(1) + @query("offerGuid") + offerGuid?: string; + + /** + * The tenant id of the report creator. + */ + @minLength(1) + @query("reportCreatorTenantId") + reportCreatorTenantId?: string; +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp new file mode 100644 index 000000000000..b5b096a45d41 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp @@ -0,0 +1,127 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "@typespec/rest"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using Azure.ResourceManager.Foundations; +using TypeSpec.Http; +using OpenAPI; +using Azure.Core; + +namespace Microsoft.AppComplianceAutomation; + +@armResourceOperations +interface AcatOperations { + /** + * @dev The base template for Azure Resource Manager PUT Operations. + * @param HttpParameters The parameter object for the operation. + * @param BodyParameter The body parameter + * @param Response The response or union of responses for success. + * @param ErrorResponse The error response. + */ + @doc("Base template for Acat report PUT Operations.") + AcatCreateOperation< + HttpParameters extends {}, + BodyParameter extends {}, + Response extends {}, + ErrorResponse extends {} + >( + ...HttpParameters, + @doc("Resource create parameters.") @body parameters: BodyParameter, + ): Response | ErrorResponse; + + /** + * A long-running resource CreateOrUpdate (PUT) + * @template Resource the resource being patched + * @template BaseParameters Optional. Allows overriding the operation parameters + * @template LroHeaders Optional. Allows overriding the lro headers returned on resource create + * @template Parameters Optional. Additional parameters after the path parameters + * @template Response Optional. The success response for the createOrUpdate operation + * @template Error Optional. The error response, if non-standard. + */ + @autoRoute + @doc("Create a {name}", Resource) + @extension("x-ms-long-running-operation", true) + @extension( + "x-ms-long-running-operation-options", + { + `final-state-via`: "azure-async-operation", + } + ) + @armResourceCreateOrUpdate(Resource) + @put + AcatResourceCreateOrUpdateAsync< + Resource extends ArmResource, + BaseParameters = DefaultBaseParameters, + LroHeaders extends TypeSpec.Reflection.Model = Azure.Core.Foundations.RetryAfterHeader, + Parameters extends {} = {}, + Response extends {} = ArmResourceUpdatedResponse | ArmResourceCreatedResponse< + Resource, + LroHeaders + >, + Error extends {} = ErrorResponse + > is AcatOperations.AcatCreateOperation< + ResourceInstanceParameters & Parameters, + Resource, + ArmResourceUpdatedResponse | ArmResourceCreatedResponse< + Resource, + LroHeaders + >, + Error + >; + + /** + * @dev A long-running resource CreateOrUpdate (PUT) + * @template Resource the resource being patched + * @template BaseParameters Optional. Allows overriding the operation parameters + * @template LroHeaders Optional. Allows overriding the lro headers returned on resource create + * @template Parameters Optional. Additional parameters after the path parameters + * @template Response Optional. The success response for the createOrReplace operation + * @template Error Optional. The error response, if non-standard. + */ + AcatResourceCreateOrReplaceAsync< + Resource extends ArmResource, + BaseParameters = DefaultBaseParameters, + LroHeaders extends TypeSpec.Reflection.Model = Azure.Core.Foundations.RetryAfterHeader, + Parameters extends {} = {}, + Response extends {} = ArmResourceUpdatedResponse | ArmResourceCreatedResponse< + Resource, + LroHeaders + >, + Error extends {} = ErrorResponse + > is AcatOperations.AcatResourceCreateOrUpdateAsync< + Resource, + BaseParameters, + LroHeaders, + Parameters, + Response, + Error + >; + + /** + * Synchronous PUT operation for Azure Resource Manager resources + * @template Resource the resource being patched + * @template BaseParameters Optional. Allows overriding the operation parameters + * @template Parameters Optional. Additional parameters after the path parameters + * @template Response Optional. The success response for the createOrUpdate operation + * @template Error Optional. The error response, if non-standard. + */ + @autoRoute + @doc("Create a {name}", Resource) + @armResourceCreateOrUpdate(Resource) + @put + AcatResourceCreateOrReplaceSync< + Resource extends ArmResource, + BaseParameters = DefaultBaseParameters, + Parameters extends {} = {}, + Response extends {} = ArmResourceUpdatedResponse | ArmResourceCreatedSyncResponse, + Error extends {} = ErrorResponse + > is AcatOperations.AcatCreateOperation< + ResourceInstanceParameters & Parameters, + Resource, + Response, + Error + >; +} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp new file mode 100644 index 000000000000..357350acbd54 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp @@ -0,0 +1,124 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "../models/models.tsp"; +import "./ReportResource.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using Azure.ResourceManager.Foundations; +using TypeSpec.Http; +using OpenAPI; + +namespace Microsoft.AppComplianceAutomation; +/** + * A class represent an AppComplianceAutomation evidence resource. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility" +#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "For backward compatibility" +@parentResource(ReportResource) +@includeInapplicableMetadataInPayload(false) +@Azure.ResourceManager.Private.armResourceInternal(EvidenceProperties) +model EvidenceResource extends ProxyResourceBase { + /** + * The evidence name. + */ + @path + @key("evidenceName") + @segment("evidences") + @visibility("read") + @pattern("^[a-zA-Z0-9-_.]+$") + name: string; + + /** + * Evidence property. + */ + @extension("x-ms-client-flatten", true) + @extension("x-ms-client-name", "properties") + properties: EvidenceProperties; +} + +@armResourceOperations +@tag("AppComplianceAutomation") +interface EvidenceResources { + /** + * Get the evidence metadata + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Evidences_Get") + get is ArmResourceRead< + EvidenceResource, + { + ...BaseParameters; + + /** + * The offerGuid which mapping to the reports. + */ + @minLength(1) + @query("offerGuid") + offerGuid?: string; + + /** + * The tenant id of the report creator. + */ + @minLength(1) + @query("reportCreatorTenantId") + reportCreatorTenantId?: string; + } + >; + + /** + * Create or Update an evidence a specified report + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Evidences_CreateOrUpdate") + createOrUpdate is AcatOperations.AcatResourceCreateOrReplaceSync< + EvidenceResource, + { + ...BaseParameters; + ...ExtraParameter; + } + >; + + /** + * Delete an existent evidence from a specified report + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Evidences_Delete") + delete is ArmResourceDeleteSync; + + /** + * Returns a paginated list of evidences for a specified report. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Evidences_ListByReport") + listByReport is ArmResourceListByParent< + EvidenceResource, + { + ...BaseParameters; + ...QueryParameters; + } + >; + + /** + * Download evidence file. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Evidences_Download") + download is ArmResourceActionSync< + EvidenceResource, + EvidenceFileDownloadRequest, + EvidenceFileDownloadResponse + >; +} + +@@doc(EvidenceResources.createOrUpdate::parameters.parameters, + "Parameters for the create or update operation" +); +@@encodedName(EvidenceResources.download::parameters.body, + "application/json", + "parameters" +); +@@doc(EvidenceResources.download::parameters.body, + "Parameters for the query operation" +); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp new file mode 100644 index 000000000000..bb652e338dd0 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp @@ -0,0 +1,173 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "@typespec/rest"; +import "../models/models.tsp"; +import "../operations.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using Azure.ResourceManager.Foundations; +using TypeSpec.Http; +using OpenAPI; +using Azure.Core; + +namespace Microsoft.AppComplianceAutomation; +/** + * A class represent an AppComplianceAutomation report resource. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility" +#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "For backward compatibility" +@tenantResource +@includeInapplicableMetadataInPayload(false) +@Azure.ResourceManager.Private.armResourceInternal(ReportProperties) +model ReportResource extends ProxyResourceBase { + /** + * Report Name. + */ + @pattern("^[-a-zA-Z0-9_]{1,50}$") + @path + @key("reportName") + @segment("reports") + @visibility("read") + name: string; + + /** + * Report property. + */ + @extension("x-ms-client-flatten", true) + @extension("x-ms-client-name", "properties") + properties: ReportProperties; +} + +@armResourceOperations +@tag("AppComplianceAutomation") +interface ReportResources { + /** + * Get the AppComplianceAutomation report and its properties. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Reports_Get") + get is ArmResourceRead; + + /** + * Create a new AppComplianceAutomation report or update an exiting AppComplianceAutomation report. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Reports_CreateOrUpdate") + createOrUpdate is AcatOperations.AcatResourceCreateOrReplaceAsync< + ReportResource, + BaseParameters + >; + + /** + * Update an exiting AppComplianceAutomation report. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @parameterVisibility("read") + @operationId("Reports_Update") + update is ArmCustomPatchAsync< + ReportResource, + ReportResourcePatch, + BaseParameters + >; + + /** + * Delete an AppComplianceAutomation report. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Reports_Delete") + delete is ArmResourceDeleteWithoutOkAsync< + ReportResource, + BaseParameters + >; + + /** + * Get the AppComplianceAutomation report list for the tenant. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Reports_List") + list is ArmResourceListByParent< + ReportResource, + { + ...BaseParameters; + ...QueryParameters; + } + >; + + /** + * Synchronize attestation record from app compliance. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Reports_SyncCertRecord") + syncCertRecord is ArmResourceActionAsync< + ReportResource, + SyncCertRecordRequest, + SyncCertRecordResponse, + BaseParameters + >; + + /** + * Checks the report's nested resource name availability, e.g: Webhooks, Evidences, Snapshots. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Reports_NestedResourceCheckNameAvailability") + checkNameAvailability is ArmResourceActionSync< + ReportResource, + CheckNameAvailabilityRequest, + CheckNameAvailabilityResponse + >; + + /** + * Fix the AppComplianceAutomation report error. e.g: App Compliance Automation Tool service unregistered, automation removed. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Reports_Fix") + fix is ArmResourceActionAsync< + ReportResource, + void, + ReportFixResult, + BaseParameters + >; + + /** + * Fix the AppComplianceAutomation report error. e.g: App Compliance Automation Tool service unregistered, automation removed. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("GetScopingQuestions") + getScopingQuestions is ArmResourceActionSync< + ReportResource, + void, + ScopingQuestions, + BaseParameters + >; + + /** + * Verify the AppComplianceAutomation report health status. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Report_Verify") + verify is ArmResourceActionAsync< + ReportResource, + void, + ReportVerificationResult, + BaseParameters + >; +} + +@@doc(ReportResources.createOrUpdate::parameters.parameters, + "Parameters for the create or update operation" +); +@@doc(ReportResources.update::parameters.properties, + "Parameters for the create or update operation" +); +@@doc(ReportResources.syncCertRecord::parameters.body, + "Parameters for synchronize certification record operation" +); +@@doc(ReportResources.checkNameAvailability::parameters.body, + "NameAvailabilityRequest object." +); +@@encodedName(ReportResources.update::parameters.properties, + "application/json", + "parameters" +); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp new file mode 100644 index 000000000000..d4e69a337fbb --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp @@ -0,0 +1,77 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "@typespec/rest"; +import "../models/models.tsp"; +import "./ReportResource.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using Azure.ResourceManager.Foundations; +using TypeSpec.Http; +using OpenAPI; + +namespace Microsoft.AppComplianceAutomation; +/** + * A class represent an AppComplianceAutomation scoping configuration resource. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility" +#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "For backward compatibility" +@singleton("default") +@parentResource(ReportResource) +@includeInapplicableMetadataInPayload(false) +@Azure.ResourceManager.Private.armResourceInternal( + ScopingConfigurationProperties +) +model ScopingConfigurationResource extends ProxyResourceBase { + @key("scopingConfiguration") + @segment("scopingConfigurations") + @visibility("read") + @path + @doc("The scoping configuration of the specific report.") + @pattern("^[a-zA-Z0-9_]*$") + name: string; + + /** + * ScopingConfiguration property. + */ + @extension("x-ms-client-flatten", true) + @extension("x-ms-client-name", "properties") + properties: ScopingConfigurationProperties; +} + +@armResourceOperations +@tag("AppComplianceAutomation") +interface ScopingConfigurationResources { + /** + * Get the AppComplianceAutomation scoping configuration of the specific report. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("ScopingConfiguration_Get") + get is ArmResourceRead; + + /** + * Get the AppComplianceAutomation scoping configuration of the specific report. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("ScopingConfiguration_CreateOrUpdate") + createOrUpdate is AcatOperations.AcatResourceCreateOrReplaceSync; + + /** + * Clean the AppComplianceAutomation scoping configuration of the specific report. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("ScopingConfiguration_Delete") + delete is ArmResourceDeleteSync; + + /** + * Returns a list format of the singleton scopingConfiguration for a specified report. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("ScopingConfigurations_List") + list is ArmResourceListByParent; +} + +@@doc(ScopingConfigurationResources.createOrUpdate::parameters.parameters, + "Parameters for the create or update operation" +); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp new file mode 100644 index 000000000000..40e1cc49337c --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp @@ -0,0 +1,80 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "@typespec/rest"; +import "../models/models.tsp"; +import "./ReportResource.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using Azure.ResourceManager.Foundations; +using TypeSpec.Http; +using OpenAPI; + +namespace Microsoft.AppComplianceAutomation; +/** + * A class represent a AppComplianceAutomation snapshot resource. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility" +#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "For backward compatibility" +@parentResource(ReportResource) +@includeInapplicableMetadataInPayload(false) +@Azure.ResourceManager.Private.armResourceInternal(SnapshotProperties) +model SnapshotResource extends ProxyResourceBase { + /** + * Snapshot Name. + */ + @path + @key("snapshotName") + @segment("snapshots") + @visibility("read") + @pattern("^[a-zA-Z0-9-]{1,64}$") + name: string; + + /** + * Snapshot's property'. + */ + @extension("x-ms-client-flatten", true) + @extension("x-ms-client-name", "properties") + properties?: SnapshotProperties; +} + +@armResourceOperations +@tag("AppComplianceAutomation") +interface SnapshotResources { + /** + * Get the AppComplianceAutomation snapshot and its properties. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Snapshots_Get") + get is ArmResourceRead; + + /** + * Get the AppComplianceAutomation snapshot list. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Snapshots_List") + list is ArmResourceListByParent< + SnapshotResource, + { + ...BaseParameters; + ...QueryParameters; + } + >; + + /** + * Download compliance needs from snapshot, like: Compliance Report, Resource List. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Snapshots_Download") + download is ArmResourceActionAsync< + SnapshotResource, + SnapshotDownloadRequest, + DownloadResponse, + BaseParameters + >; +} + +@@doc(SnapshotResources.download::parameters.body, + "Parameters for the query operation" +); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp new file mode 100644 index 000000000000..bc5c58df536b --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp @@ -0,0 +1,98 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "@typespec/rest"; +import "../models/models.tsp"; +import "./ReportResource.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using Azure.ResourceManager.Foundations; +using TypeSpec.Http; +using OpenAPI; + +namespace Microsoft.AppComplianceAutomation; +/** + * A class represent an AppComplianceAutomation webhook resource. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility" +#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "For backward compatibility" +@parentResource(ReportResource) +@includeInapplicableMetadataInPayload(false) +@Azure.ResourceManager.Private.armResourceInternal(WebhookProperties) +model WebhookResource extends ProxyResourceBase { + /** + * Webhook Name. + */ + @pattern("^[-a-zA-Z0-9_]{1,50}$") + @path + @key("webhookName") + @segment("webhooks") + @visibility("read") + name: string; + + /** + * Webhook property. + */ + @extension("x-ms-client-flatten", true) + @extension("x-ms-client-name", "properties") + properties: WebhookProperties; +} + +@armResourceOperations +@tag("AppComplianceAutomation") +interface WebhookResources { + /** + * Get the AppComplianceAutomation webhook and its properties. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Webhooks_Get") + get is ArmResourceRead; + + /** + * Create a new AppComplianceAutomation webhook or update an exiting AppComplianceAutomation webhook. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Webhooks_CreateOrUpdate") + createOrUpdate is AcatOperations.AcatResourceCreateOrReplaceSync; + + /** + * Update an exiting AppComplianceAutomation webhook. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @parameterVisibility("read") + @operationId("Webhooks_Update") + update is ArmCustomPatchSync; + + /** + * Delete an AppComplianceAutomation webhook. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Webhooks_Delete") + delete is ArmResourceDeleteSync; + + /** + * Get the AppComplianceAutomation webhook list. + */ + #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" + @operationId("Webhooks_List") + list is ArmResourceListByParent< + WebhookResource, + { + ...BaseParameters; + ...QueryParameters; + } + >; +} + +@@doc(WebhookResources.createOrUpdate::parameters.parameters, + "Parameters for the create or update operation" +); +@@doc(WebhookResources.update::parameters.properties, + "Parameters for the create or update operation" +); + +@@encodedName(WebhookResources.update::parameters.properties, + "application/json", + "parameters" +); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp new file mode 100644 index 000000000000..c9755d09136b --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp @@ -0,0 +1,95 @@ +import "@azure-tools/typespec-azure-core"; +import "@typespec/rest"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "./models/models.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using Azure.ResourceManager.Foundations; +using TypeSpec.Http; +using OpenAPI; +using Azure.Core; +using Azure.Core.Traits; + +namespace Microsoft.AppComplianceAutomation; + +interface Operations extends Azure.ResourceManager.Operations {} + +alias PlaceholderResource = { + id: string; + type: string; +}; + +alias ArmProviderActionAsync< + Request extends {} | void, + Response extends {} | void, + Parameters extends {} = {}, + LroHeaders extends TypeSpec.Reflection.Model = ArmLroLocationHeader & + Azure.Core.Foundations.RetryAfterHeader +> = ArmResourceActionAsync< + PlaceholderResource, + Request, + Response | ArmAcceptedLroResponse<"Accepted", LroHeaders>, + BaseParameters = ApiVersionParameter, + Parameters = Parameters, + LroHeaders = ArmLroLocationHeader> +>; + +alias ArmProviderActionSync< + Request extends {} | void, + Response extends {} | void, + Parameters extends {} = {} +> = ArmResourceActionSync< + PlaceholderResource, + Request, + Response, + BaseParameters = ApiVersionParameter, + Parameters = Parameters +>; + +@armResourceOperations +@tag("AppComplianceAutomation") +interface ProviderActions { + @doc("Check if the given name is available for a report.") + checkNameAvailability is ArmProviderActionSync< + CheckNameAvailabilityRequest, + CheckNameAvailabilityResponse + >; + + @doc("Get the count of reports.") + getCollectionCount is ArmProviderActionSync< + GetCollectionCountRequest, + GetCollectionCountResponse + >; + + @doc("Get the resource overview status.") + getOverviewStatus is ArmProviderActionSync< + GetOverviewStatusRequest, + GetOverviewStatusResponse + >; + + @doc("Onboard given subscriptions to Microsoft.AppComplianceAutomation provider.") + onboard is ArmProviderActionAsync; + + @doc("Trigger quick evaluation for the given subscriptions.") + triggerEvaluation is ArmProviderActionAsync< + TriggerEvaluationRequest, + TriggerEvaluationResponse + >; + + @doc("List the storage accounts which are in use by related reports") + listInUseStorageAccounts is ArmProviderActionSync< + ListInUseStorageAccountsRequest, + ListInUseStorageAccountsResponse + >; +} + +@@encodedName(ArmProviderActionAsync::parameters.body, + "application/json", + "parameters" +); +@@encodedName(ArmProviderActionSync::parameters.body, + "application/json", + "parameters" +); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml b/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml new file mode 100644 index 000000000000..74faecc5ee80 --- /dev/null +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml @@ -0,0 +1,28 @@ +emit: + - "@azure-tools/typespec-autorest" +options: + "@azure-tools/typespec-autorest": + use-read-only-status-schema: true + emitter-output-dir: "{project-root}/.." + azure-resource-provider-folder: "resource-manager" + output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/appcomplianceautomation.json" + examples-directory: "{project-root}/examples" + "@azure-tools/typespec-python": + flavor: azure + package-dir: "azure-mgmt-appcomplianceautomation" + package-name: "{package-dir}" + "@azure-tools/typespec-csharp": + flavor: azure + package-dir: "Microsoft.AppComplianceAutomation" + clear-output-folder: true + model-namespace: false + namespace: "{package-dir}" + "@azure-tools/typespec-ts": + flavor: azure + package-dir: "arm-appcomplianceautomation" + packageDetails: + name: "@azure/arm-appcomplianceautomation" + examples-directory: "{project-root}/examples" +linter: + extends: + - "@azure-tools/typespec-azure-resource-manager/all" diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index 612bf06b8c9e..e5f92d4a4880 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -3,16 +3,21 @@ "info": { "title": "App Compliance Automation Tool for Microsoft 365", "version": "2024-06-27", - "description": "App Compliance Automation Tool for Microsoft 365 API spec" + "description": "App Compliance Automation Tool for Microsoft 365 API spec", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] }, - "host": "management.azure.com", "schemes": [ "https" ], - "consumes": [ + "host": "management.azure.com", + "produces": [ "application/json" ], - "produces": [ + "consumes": [ "application/json" ], "security": [ @@ -25,1018 +30,4108 @@ "securityDefinitions": { "azure_auth": { "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow.", "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", "scopes": { "user_impersonation": "impersonate your user account" } } }, + "tags": [ + { + "name": "AppComplianceAutomation" + }, + { + "name": "Operations" + } + ], "paths": { - "/providers/Microsoft.AppComplianceAutomation/operations": { - "get": { + "/providers/Microsoft.AppComplianceAutomation/checkNameAvailability": { + "post": { + "operationId": "ProviderActions_CheckNameAvailability", "tags": [ "AppComplianceAutomation" ], - "description": "Lists all of the available REST API operations of the Microsoft.AppComplianceAutomation provider.", - "operationId": "Operations_List", - "produces": [ - "application/json" - ], + "description": "Check if the given name is available for a report.", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The content of the action request", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityRequest" + }, + "x-ms-client-name": "body" } ], "responses": { "200": { - "description": "Success. The response describes the list of operations.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/OperationListResult" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityResponse" } }, "default": { - "description": "Error response.", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, "x-ms-examples": { - "Operations_List": { - "$ref": "./examples/Operations_List.json" + "Reports_CheckNameAvailability": { + "$ref": "./examples/Reports_CheckNameAvailability.json" } } } }, - "/providers/Microsoft.AppComplianceAutomation/reports": { - "get": { + "/providers/Microsoft.AppComplianceAutomation/getCollectionCount": { + "post": { + "operationId": "ProviderActions_GetCollectionCount", "tags": [ "AppComplianceAutomation" ], - "description": "Get the AppComplianceAutomation report list for the tenant.", - "operationId": "Reports_List", + "description": "Get the count of reports.", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SkipTokenParameter" - }, - { - "$ref": "#/parameters/TopParameter" - }, - { - "$ref": "#/parameters/SelectParameter" - }, - { - "$ref": "#/parameters/OfferGuidParameter" - }, - { - "$ref": "#/parameters/ReportCreatorTenantIdParameter" + "name": "parameters", + "in": "body", + "description": "The content of the action request", + "required": true, + "schema": { + "$ref": "#/definitions/GetCollectionCountRequest" + }, + "x-ms-client-name": "body" } ], "responses": { "200": { - "description": "Success.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/ReportResourceList" + "$ref": "#/definitions/GetCollectionCountResponse" } }, "default": { - "description": "Error response.", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, "x-ms-examples": { - "Reports_List": { - "$ref": "./examples/Reports_List.json" + "Reports_GetCollectionCount": { + "$ref": "./examples/Reports_GetCollectionCount.json" } } } }, - "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}": { - "get": { + "/providers/Microsoft.AppComplianceAutomation/getOverviewStatus": { + "post": { + "operationId": "ProviderActions_GetOverviewStatus", "tags": [ "AppComplianceAutomation" ], - "description": "Get the AppComplianceAutomation report and its properties.", - "operationId": "Report_Get", + "description": "Get the resource overview status.", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ReportNameParameter" + "name": "parameters", + "in": "body", + "description": "The content of the action request", + "required": true, + "schema": { + "$ref": "#/definitions/GetOverviewStatusRequest" + }, + "x-ms-client-name": "body" } ], "responses": { "200": { - "description": "Success.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/ReportResource" + "$ref": "#/definitions/GetOverviewStatusResponse" } }, "default": { - "description": "Error response.", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { - "Report_Get": { - "$ref": "./examples/Report_Get.json" + "Reports_GetOverviewStatus": { + "$ref": "./examples/Reports_GetOverviewStatus.json" } } - }, - "put": { + } + }, + "/providers/Microsoft.AppComplianceAutomation/listInUseStorageAccounts": { + "post": { + "operationId": "ProviderActions_ListInUseStorageAccounts", "tags": [ "AppComplianceAutomation" ], - "description": "Create a new AppComplianceAutomation report or update an exiting AppComplianceAutomation report.", - "operationId": "Report_CreateOrUpdate", + "description": "List the storage accounts which are in use by related reports", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, { "name": "parameters", "in": "body", - "description": "Parameters for the create or update operation", + "description": "The content of the action request", "required": true, "schema": { - "$ref": "#/definitions/ReportResource" - } - }, - { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ReportNameParameter" + "$ref": "#/definitions/ListInUseStorageAccountsRequest" + }, + "x-ms-client-name": "body" } ], "responses": { "200": { - "description": "Success. The response describes a AppComplianceAutomation report.", - "schema": { - "$ref": "#/definitions/ReportResource" - } - }, - "201": { - "description": "Created. The response describes the new service and contains a Location header to query the operation result.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/ReportResource" + "$ref": "#/definitions/ListInUseStorageAccountsResponse" } }, "default": { - "description": "Error response.", + "description": "An unexpected error response.", "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": { - "Report_CreateOrUpdate": { - "$ref": "./examples/Report_CreateOrUpdate.json" + "ListInUseStorageAccountsWithSubscriptions": { + "$ref": "./examples/ListInUseStorageAccountsWithSubscriptions.json" + }, + "ListInUseStorageAccountsWithoutSubscriptions": { + "$ref": "./examples/ListInUseStorageAccountsWithoutSubscriptions.json" } } - }, - "patch": { + } + }, + "/providers/Microsoft.AppComplianceAutomation/onboard": { + "post": { + "operationId": "ProviderActions_Onboard", "tags": [ "AppComplianceAutomation" ], - "description": "Update an exiting AppComplianceAutomation report.", - "operationId": "Report_Update", + "description": "Onboard given subscriptions to Microsoft.AppComplianceAutomation provider.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, { "name": "parameters", "in": "body", - "description": "Parameters for the create or update operation", + "description": "The content of the action request", "required": true, "schema": { - "$ref": "#/definitions/ReportResourcePatch" - } - }, - { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ReportNameParameter" + "$ref": "#/definitions/OnboardRequest" + }, + "x-ms-client-name": "body" } ], "responses": { "200": { - "description": "Success. The response describes a AppComplianceAutomation report.", - "schema": { - "$ref": "#/definitions/ReportResource" - } - }, - "201": { - "description": "Long running operation support.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/ReportResource" + "$ref": "#/definitions/OnboardResponse" } }, "202": { - "description": "Long running operation support." + "description": "Resource operation accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } }, "default": { - "description": "Error response.", + "description": "An unexpected error response.", "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": { - "Report_Update": { - "$ref": "./examples/Report_Update.json" + "Onboard": { + "$ref": "./examples/Onboard.json" } - } - }, - "delete": { + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.AppComplianceAutomation/operations": { + "get": { + "operationId": "Operations_List", "tags": [ - "AppComplianceAutomation" + "Operations" ], - "description": "Delete an AppComplianceAutomation report.", - "operationId": "Report_Delete", + "description": "List the operations for the provider", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ReportNameParameter" } ], "responses": { "200": { - "description": "Success. The response indicates the resource has been deleted." - }, - "202": { - "description": "Accepted. The response indicates the delete operation is performed in the background." - }, - "204": { - "description": "Success. The response indicates the resource is already deleted." + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/OperationListResult" + } }, "default": { - "description": "Error response.", + "description": "An unexpected error response.", "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": { - "Report_Delete": { - "$ref": "./examples/Report_Delete.json" + "Operations_List": { + "$ref": "./examples/Operations_List.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/snapshots": { + "/providers/Microsoft.AppComplianceAutomation/reports": { "get": { + "operationId": "Reports_List", "tags": [ "AppComplianceAutomation" ], - "description": "Get the AppComplianceAutomation snapshot list.", - "operationId": "Snapshots_List", + "description": "Get the AppComplianceAutomation report list for the tenant.", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ReportNameParameter" + "$ref": "#/parameters/QueryParameters.skipToken" }, { - "$ref": "#/parameters/SkipTokenParameter" + "$ref": "#/parameters/QueryParameters.top" }, { - "$ref": "#/parameters/TopParameter" + "$ref": "#/parameters/QueryParameters.select" }, { - "$ref": "#/parameters/SelectParameter" + "$ref": "#/parameters/QueryParameters.filter" }, { - "$ref": "#/parameters/ReportCreatorTenantIdParameter" + "$ref": "#/parameters/QueryParameters.orderby" }, { - "$ref": "#/parameters/OfferGuidParameter" + "$ref": "#/parameters/QueryParameters.offerGuid" + }, + { + "$ref": "#/parameters/QueryParameters.reportCreatorTenantId" } ], "responses": { "200": { - "description": "Success.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/SnapshotResourceList" + "$ref": "#/definitions/ReportResourceListResult" } }, "default": { - "description": "Error response.", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, "x-ms-examples": { - "Snapshots_List": { - "$ref": "./examples/Snapshots_List.json" + "Reports_List": { + "$ref": "./examples/Reports_List.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/snapshots/{snapshotName}": { + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}": { "get": { + "operationId": "Reports_Get", "tags": [ "AppComplianceAutomation" ], - "description": "Get the AppComplianceAutomation snapshot and its properties.", - "operationId": "Snapshot_Get", + "description": "Get the AppComplianceAutomation report and its properties.", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ReportNameParameter" - }, - { - "$ref": "#/parameters/SnapshotNameParameter" + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" } ], "responses": { "200": { - "description": "Success.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/SnapshotResource" + "$ref": "#/definitions/ReportResource" } }, "default": { - "description": "Error response.", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { - "Snapshot_Get": { - "$ref": "./examples/Snapshot_Get.json" + "Report_Get": { + "$ref": "./examples/Report_Get.json" } } - } - }, - "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/snapshots/{snapshotName}/download": { - "post": { + }, + "put": { + "operationId": "Reports_CreateOrUpdate", "tags": [ "AppComplianceAutomation" ], - "description": "Download compliance needs from snapshot, like: Compliance Report, Resource List.", - "operationId": "Snapshot_Download", + "description": "Create a new AppComplianceAutomation report or update an exiting AppComplianceAutomation report.", "parameters": [ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ReportNameParameter" - }, - { - "$ref": "#/parameters/SnapshotNameParameter" + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { "name": "parameters", "in": "body", - "description": "Parameters for the query operation", + "description": "Parameters for the create or update operation", "required": true, "schema": { - "$ref": "#/definitions/SnapshotDownloadRequest" + "$ref": "#/definitions/ReportResource" } } ], "responses": { "200": { - "description": "Success.", + "description": "Resource 'ReportResource' update operation succeeded", "schema": { - "$ref": "#/definitions/DownloadResponse" + "$ref": "#/definitions/ReportResource" } }, - "202": { - "description": "Accepted. The response indicates the exiting AppComplianceAutomation report is now updating and contains a Location header to query the operation result." + "201": { + "description": "Resource 'ReportResource' create operation succeeded", + "schema": { + "$ref": "#/definitions/ReportResource" + }, + "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": "Error response.", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, - "x-ms-long-running-operation": true, + "x-ms-examples": { + "Report_CreateOrUpdate": { + "$ref": "./examples/Report_CreateOrUpdate.json" + } + }, "x-ms-long-running-operation-options": { "final-state-via": "azure-async-operation" }, - "x-ms-examples": { - "Snapshot_Download_ComplianceReport": { - "$ref": "./examples/Snapshot_ComplianceReport_Download.json" + "x-ms-long-running-operation": true + }, + "patch": { + "operationId": "Reports_Update", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Update an exiting AppComplianceAutomation report.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, - "Snapshot_Download_CompliancePdfReport": { - "$ref": "./examples/Snapshot_CompliancePdfReport_Download.json" + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, - "Snapshot_Download_ComplianceDetailedPdfReport": { - "$ref": "./examples/Snapshot_ComplianceDetailedPdfReport_Download.json" + { + "name": "parameters", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/ReportResourcePatch" + }, + "x-ms-client-name": "properties" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/ReportResource" + } }, - "Snapshot_Download_ResourceList": { - "$ref": "./examples/Snapshot_ResourceList_Download.json" + "202": { + "description": "Resource update request accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } } - } - } - } - }, - "definitions": { + }, + "x-ms-examples": { + "Report_Update": { + "$ref": "./examples/Report_Update.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "Reports_Delete", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Delete an AppComplianceAutomation report.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + } + ], + "responses": { + "202": { + "description": "Resource deletion accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Report_Delete": { + "$ref": "./examples/Report_Delete.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/checkNameAvailability": { + "post": { + "operationId": "Reports_NestedResourceCheckNameAvailability", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Checks the report's nested resource name availability, e.g: Webhooks, Evidences, Snapshots.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "parameters", + "in": "body", + "description": "NameAvailabilityRequest object.", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityRequest" + }, + "x-ms-client-name": "body" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Reports_EvidenceCheckNameAvailability": { + "$ref": "./examples/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json" + }, + "Reports_SnapshotCheckNameAvailability": { + "$ref": "./examples/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json" + }, + "Reports_WebhookCheckNameAvailability": { + "$ref": "./examples/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json" + } + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/evidences": { + "get": { + "operationId": "Evidences_ListByReport", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Returns a paginated list of evidences for a specified report.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/QueryParameters.skipToken" + }, + { + "$ref": "#/parameters/QueryParameters.top" + }, + { + "$ref": "#/parameters/QueryParameters.select" + }, + { + "$ref": "#/parameters/QueryParameters.filter" + }, + { + "$ref": "#/parameters/QueryParameters.orderby" + }, + { + "$ref": "#/parameters/QueryParameters.offerGuid" + }, + { + "$ref": "#/parameters/QueryParameters.reportCreatorTenantId" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/EvidenceResourceListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Evidences_ListByReport": { + "$ref": "./examples/Evidences_ListByReport.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/evidences/{evidenceName}": { + "get": { + "operationId": "Evidences_Get", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Get the evidence metadata", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "offerGuid", + "in": "query", + "description": "The offerGuid which mapping to the reports.", + "required": false, + "type": "string", + "minLength": 1 + }, + { + "name": "reportCreatorTenantId", + "in": "query", + "description": "The tenant id of the report creator.", + "required": false, + "type": "string", + "minLength": 1 + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "evidenceName", + "in": "path", + "description": "The evidence name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-_.]+$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/EvidenceResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Evidences_Get": { + "$ref": "./examples/Evidences_Get.json" + } + } + }, + "put": { + "operationId": "Evidences_CreateOrUpdate", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Create or Update an evidence a specified report", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ExtraParameter.offerGuid" + }, + { + "$ref": "#/parameters/ExtraParameter.reportCreatorTenantId" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "evidenceName", + "in": "path", + "description": "The evidence name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-_.]+$" + }, + { + "name": "parameters", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/EvidenceResource" + } + } + ], + "responses": { + "200": { + "description": "Resource 'EvidenceResource' update operation succeeded", + "schema": { + "$ref": "#/definitions/EvidenceResource" + } + }, + "201": { + "description": "Resource 'EvidenceResource' create operation succeeded", + "schema": { + "$ref": "#/definitions/EvidenceResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Evidences_CreateOrUpdate": { + "$ref": "./examples/Evidences_CreateOrUpdate.json" + } + } + }, + "delete": { + "operationId": "Evidences_Delete", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Delete an existent evidence from a specified report", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "evidenceName", + "in": "path", + "description": "The evidence name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-_.]+$" + } + ], + "responses": { + "200": { + "description": "Resource deleted successfully." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Evidences_Delete": { + "$ref": "./examples/Evidences_Delete.json" + } + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/evidences/{evidenceName}/download": { + "post": { + "operationId": "Evidences_Download", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Download evidence file.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "evidenceName", + "in": "path", + "description": "The evidence name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-_.]+$" + }, + { + "name": "parameters", + "in": "body", + "description": "Parameters for the query operation", + "required": true, + "schema": { + "$ref": "#/definitions/EvidenceFileDownloadRequest" + }, + "x-ms-client-name": "body" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/EvidenceFileDownloadResponse" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Evidences_Download": { + "$ref": "./examples/Evidences_Download.json" + } + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/fix": { + "post": { + "operationId": "Reports_Fix", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Fix the AppComplianceAutomation report error. e.g: App Compliance Automation Tool service unregistered, automation removed.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/ReportFixResult" + } + }, + "202": { + "description": "Resource operation accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Report_Fix": { + "$ref": "./examples/Report_Fix.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/getScopingQuestions": { + "post": { + "operationId": "GetScopingQuestions", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Fix the AppComplianceAutomation report error. e.g: App Compliance Automation Tool service unregistered, automation removed.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/ScopingQuestions" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetScopingQuestions": { + "$ref": "./examples/ScopingQuestions.json" + } + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/scopingConfigurations": { + "get": { + "operationId": "ScopingConfigurations_List", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Returns a list format of the singleton scopingConfiguration for a specified report.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/ScopingConfigurationResourceListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ScopingConfigurations_List": { + "$ref": "./examples/ScopingConfigurations_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/scopingConfigurations/default": { + "get": { + "operationId": "ScopingConfiguration_Get", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Get the AppComplianceAutomation scoping configuration of the specific report.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/ScopingConfigurationResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ScopingConfiguration": { + "$ref": "./examples/ScopingConfiguration_Get.json" + } + } + }, + "put": { + "operationId": "ScopingConfiguration_CreateOrUpdate", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Get the AppComplianceAutomation scoping configuration of the specific report.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "parameters", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/ScopingConfigurationResource" + } + } + ], + "responses": { + "200": { + "description": "Resource 'ScopingConfigurationResource' update operation succeeded", + "schema": { + "$ref": "#/definitions/ScopingConfigurationResource" + } + }, + "201": { + "description": "Resource 'ScopingConfigurationResource' create operation succeeded", + "schema": { + "$ref": "#/definitions/ScopingConfigurationResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ScopingConfiguration_CreateOrUpdate": { + "$ref": "./examples/ScopingConfiguration_CreateOrUpdate.json" + } + } + }, + "delete": { + "operationId": "ScopingConfiguration_Delete", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Clean the AppComplianceAutomation scoping configuration of the specific report.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + } + ], + "responses": { + "200": { + "description": "Resource deleted successfully." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ScopingConfiguration_Delete": { + "$ref": "./examples/ScopingConfiguration_Delete.json" + } + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/snapshots": { + "get": { + "operationId": "Snapshots_List", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Get the AppComplianceAutomation snapshot list.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/QueryParameters.skipToken" + }, + { + "$ref": "#/parameters/QueryParameters.top" + }, + { + "$ref": "#/parameters/QueryParameters.select" + }, + { + "$ref": "#/parameters/QueryParameters.filter" + }, + { + "$ref": "#/parameters/QueryParameters.orderby" + }, + { + "$ref": "#/parameters/QueryParameters.offerGuid" + }, + { + "$ref": "#/parameters/QueryParameters.reportCreatorTenantId" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/SnapshotResourceListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Snapshots_List": { + "$ref": "./examples/Snapshots_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/snapshots/{snapshotName}": { + "get": { + "operationId": "Snapshots_Get", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Get the AppComplianceAutomation snapshot and its properties.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "snapshotName", + "in": "path", + "description": "Snapshot Name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{1,64}$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/SnapshotResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Snapshot_Get": { + "$ref": "./examples/Snapshots_Get.json" + } + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/snapshots/{snapshotName}/download": { + "post": { + "operationId": "Snapshots_Download", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Download compliance needs from snapshot, like: Compliance Report, Resource List.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "snapshotName", + "in": "path", + "description": "Snapshot Name.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{1,64}$" + }, + { + "name": "parameters", + "in": "body", + "description": "Parameters for the query operation", + "required": true, + "schema": { + "$ref": "#/definitions/SnapshotDownloadRequest" + }, + "x-ms-client-name": "body" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/DownloadResponse" + } + }, + "202": { + "description": "Resource operation accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Snapshot_Download_ComplianceDetailedPdfReport": { + "$ref": "./examples/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json" + }, + "Snapshot_Download_CompliancePdfReport": { + "$ref": "./examples/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json" + }, + "Snapshot_Download_ComplianceReport": { + "$ref": "./examples/Snapshots_Download_Snapshot_Download_Compliance_Report.json" + }, + "Snapshot_Download_ResourceList": { + "$ref": "./examples/Snapshots_Download_Snapshot_Download_Resource_List.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/syncCertRecord": { + "post": { + "operationId": "Reports_SyncCertRecord", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Synchronize attestation record from app compliance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "parameters", + "in": "body", + "description": "Parameters for synchronize certification record operation", + "required": true, + "schema": { + "$ref": "#/definitions/SyncCertRecordRequest" + }, + "x-ms-client-name": "body" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/SyncCertRecordResponse" + } + }, + "202": { + "description": "Resource operation accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Reports_SyncCertRecord": { + "$ref": "./examples/Reports_SyncCertRecord.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/verify": { + "post": { + "operationId": "Report_Verify", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Verify the AppComplianceAutomation report health status.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/ReportVerificationResult" + } + }, + "202": { + "description": "Resource operation accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Report_Verify": { + "$ref": "./examples/Report_Verify.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/webhooks": { + "get": { + "operationId": "Webhooks_List", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Get the AppComplianceAutomation webhook list.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/QueryParameters.skipToken" + }, + { + "$ref": "#/parameters/QueryParameters.top" + }, + { + "$ref": "#/parameters/QueryParameters.select" + }, + { + "$ref": "#/parameters/QueryParameters.filter" + }, + { + "$ref": "#/parameters/QueryParameters.orderby" + }, + { + "$ref": "#/parameters/QueryParameters.offerGuid" + }, + { + "$ref": "#/parameters/QueryParameters.reportCreatorTenantId" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/WebhookResourceListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Webhooks_List": { + "$ref": "./examples/Webhooks_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/webhooks/{webhookName}": { + "get": { + "operationId": "Webhooks_Get", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Get the AppComplianceAutomation webhook and its properties.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "webhookName", + "in": "path", + "description": "Webhook Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/WebhookResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Webhook_Get": { + "$ref": "./examples/Webhooks_Get.json" + } + } + }, + "put": { + "operationId": "Webhooks_CreateOrUpdate", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Create a new AppComplianceAutomation webhook or update an exiting AppComplianceAutomation webhook.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "webhookName", + "in": "path", + "description": "Webhook Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "parameters", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/WebhookResource" + } + } + ], + "responses": { + "200": { + "description": "Resource 'WebhookResource' update operation succeeded", + "schema": { + "$ref": "#/definitions/WebhookResource" + } + }, + "201": { + "description": "Resource 'WebhookResource' create operation succeeded", + "schema": { + "$ref": "#/definitions/WebhookResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Webhook_CreateOrUpdate": { + "$ref": "./examples/Webhooks_CreateOrUpdate.json" + } + } + }, + "patch": { + "operationId": "Webhooks_Update", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Update an exiting AppComplianceAutomation webhook.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "webhookName", + "in": "path", + "description": "Webhook Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "parameters", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/WebhookResourcePatch" + }, + "x-ms-client-name": "properties" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/WebhookResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Webhook_Update": { + "$ref": "./examples/Webhooks_Update.json" + } + } + }, + "delete": { + "operationId": "Webhooks_Delete", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Delete an AppComplianceAutomation webhook.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "reportName", + "in": "path", + "description": "Report Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "webhookName", + "in": "path", + "description": "Webhook Name.", + "required": true, + "type": "string", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" + } + ], + "responses": { + "200": { + "description": "Resource deleted successfully." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Webhook_Delete": { + "$ref": "./examples/Webhooks_Delete.json" + } + } + } + }, + "/providers/Microsoft.AppComplianceAutomation/triggerEvaluation": { + "post": { + "operationId": "ProviderActions_TriggerEvaluation", + "tags": [ + "AppComplianceAutomation" + ], + "description": "Trigger quick evaluation for the given subscriptions.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The content of the action request", + "required": true, + "schema": { + "$ref": "#/definitions/TriggerEvaluationRequest" + }, + "x-ms-client-name": "body" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/TriggerEvaluationResponse" + } + }, + "202": { + "description": "Resource operation accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TriggerEvaluation": { + "$ref": "./examples/TriggerEvaluation.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "Category": { + "type": "object", + "description": "A class represent the compliance category.", + "properties": { + "categoryName": { + "type": "string", + "description": "The name of the compliance category. e.g. \"Operational Security\"", + "readOnly": true + }, + "categoryStatus": { + "$ref": "#/definitions/CategoryStatus", + "description": "Category status.", + "readOnly": true + }, + "controlFamilies": { + "type": "array", + "description": "List of control families.", + "items": { + "$ref": "#/definitions/ControlFamily" + }, + "readOnly": true, + "x-ms-identifiers": [ + "controlFamilyName" + ] + } + } + }, + "CategoryStatus": { + "type": "string", + "description": "Indicates the category status.", + "enum": [ + "Passed", + "Failed", + "NotApplicable", + "PendingApproval" + ], + "x-ms-enum": { + "name": "CategoryStatus", + "modelAsString": true, + "values": [ + { + "name": "Passed", + "value": "Passed", + "description": "The category is passed." + }, + { + "name": "Failed", + "value": "Failed", + "description": "The category is failed." + }, + { + "name": "NotApplicable", + "value": "NotApplicable", + "description": "The category is not applicable." + }, + { + "name": "PendingApproval", + "value": "PendingApproval", + "description": "The category is pending for approval." + } + ] + } + }, + "CertSyncRecord": { + "type": "object", + "description": "A class represent the certification record synchronized from app compliance.", + "properties": { + "offerGuid": { + "type": "string", + "description": "The offerGuid which mapping to the reports.", + "minLength": 1 + }, + "certificationStatus": { + "type": "string", + "description": "Indicates the status of certification process." + }, + "ingestionStatus": { + "type": "string", + "description": "Indicates the status of compliance process." + }, + "controls": { + "type": "array", + "description": "The control records list to be synchronized.", + "items": { + "$ref": "#/definitions/ControlSyncRecord" + }, + "x-ms-identifiers": [ + "controlId" + ] + } + } + }, + "ComplianceReportItem": { + "type": "object", + "description": "Object that includes all the content for single compliance result.", + "properties": { + "categoryName": { + "type": "string", + "description": "The category name.", + "readOnly": true + }, + "controlFamilyName": { + "type": "string", + "description": "The control family name.", + "readOnly": true + }, + "controlId": { + "type": "string", + "description": "The control Id - e.g. \"1\".", + "readOnly": true + }, + "controlName": { + "type": "string", + "description": "The control name.", + "readOnly": true + }, + "controlStatus": { + "$ref": "#/definitions/ControlStatus", + "description": "Control status.", + "readOnly": true + }, + "responsibilityTitle": { + "type": "string", + "description": "The title of the customer responsibility.", + "readOnly": true + }, + "responsibilityDescription": { + "type": "string", + "description": "The description of the customer responsibility.", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "The Id of the resource.", + "readOnly": true + }, + "resourceType": { + "type": "string", + "description": "The type of the resource. e.g. \"Microsoft.SignalRService/SignalR\"", + "readOnly": true + }, + "resourceOrigin": { + "$ref": "#/definitions/ResourceOrigin", + "description": "Resource origin.", + "readOnly": true + }, + "resourceStatus": { + "$ref": "#/definitions/ResourceStatus", + "description": "Resource status.", + "readOnly": true + }, + "resourceStatusChangeDate": { + "type": "string", + "format": "date-time", + "description": "The status change date for the resource.", + "readOnly": true + } + } + }, + "ComplianceResult": { + "type": "object", + "description": "A class represent the compliance result.", + "properties": { + "complianceName": { + "type": "string", + "description": "The name of the compliance. e.g. \"M365\"", + "readOnly": true + }, + "categories": { + "type": "array", + "description": "List of categories.", + "items": { + "$ref": "#/definitions/Category" + }, + "readOnly": true, + "x-ms-identifiers": [ + "categoryName" + ] + } + } + }, + "ContentType": { + "type": "string", + "description": "content type", + "enum": [ + "application/json" + ], + "x-ms-enum": { + "name": "ContentType", + "modelAsString": true, + "values": [ + { + "name": "ApplicationJson", + "value": "application/json", + "description": "The content type is application/json." + } + ] + } + }, + "Control": { + "type": "object", + "description": "A class represent the control.", + "properties": { + "controlId": { + "type": "string", + "description": "The Id of the control. e.g. \"Operational_Security_10\"", + "readOnly": true + }, + "controlName": { + "type": "string", + "description": "The name of the control. e.g. \"Unsupported OS and Software.\"", + "readOnly": true + }, + "controlFullName": { + "type": "string", + "description": "The full name of the control. e.g. \"Validate that unsupported operating systems and software components are not in use.\"", + "readOnly": true + }, + "controlDescription": { + "type": "string", + "description": "The control's description", + "readOnly": true + }, + "controlDescriptionHyperLink": { + "type": "string", + "description": "The hyper link to the control's description'.", + "readOnly": true + }, + "controlStatus": { + "$ref": "#/definitions/ControlStatus", + "description": "Control status.", + "readOnly": true + }, + "responsibilities": { + "type": "array", + "description": "List of customer responsibility.", + "items": { + "$ref": "#/definitions/Responsibility" + }, + "readOnly": true, + "x-ms-identifiers": [ + "responsibilityId" + ] + } + } + }, + "ControlFamily": { + "type": "object", + "description": "A class represent the control family.", + "properties": { + "controlFamilyName": { + "type": "string", + "description": "The name of the control family. e.g. \"Malware Protection - Anti-Virus\"", + "readOnly": true + }, + "controlFamilyStatus": { + "$ref": "#/definitions/ControlFamilyStatus", + "description": "The control family status", + "readOnly": true + }, + "controls": { + "type": "array", + "description": "List of controls.", + "items": { + "$ref": "#/definitions/Control" + }, + "readOnly": true, + "x-ms-identifiers": [ + "controlId" + ] + } + } + }, + "ControlFamilyStatus": { + "type": "string", + "description": "Indicates the control family status.", + "enum": [ + "Passed", + "Failed", + "NotApplicable", + "PendingApproval" + ], + "x-ms-enum": { + "name": "ControlFamilyStatus", + "modelAsString": true, + "values": [ + { + "name": "Passed", + "value": "Passed", + "description": "The control family is passed." + }, + { + "name": "Failed", + "value": "Failed", + "description": "The control family is failed." + }, + { + "name": "NotApplicable", + "value": "NotApplicable", + "description": "The control family is not applicable." + }, + { + "name": "PendingApproval", + "value": "PendingApproval", + "description": "The control family is pending for approval." + } + ] + } + }, + "ControlStatus": { + "type": "string", + "description": "Indicates the control status.", + "enum": [ + "Passed", + "Failed", + "NotApplicable", + "PendingApproval" + ], + "x-ms-enum": { + "name": "ControlStatus", + "modelAsString": true, + "values": [ + { + "name": "Passed", + "value": "Passed", + "description": "The control is passed." + }, + { + "name": "Failed", + "value": "Failed", + "description": "The control is failed." + }, + { + "name": "NotApplicable", + "value": "NotApplicable", + "description": "The control is not applicable." + }, + { + "name": "PendingApproval", + "value": "PendingApproval", + "description": "The control is pending for approval." + } + ] + } + }, + "ControlSyncRecord": { + "type": "object", + "description": "A class represent the control record synchronized from app compliance.", + "properties": { + "controlId": { + "type": "string", + "description": "The Id of the control. e.g. \"Operational_Security_10\"" + }, + "controlStatus": { + "type": "string", + "description": "Control status synchronized from app compliance." + } + } + }, + "DeliveryStatus": { + "type": "string", + "description": "webhook deliveryStatus", + "enum": [ + "Succeeded", + "Failed", + "NotStarted" + ], + "x-ms-enum": { + "name": "DeliveryStatus", + "modelAsString": true, + "values": [ + { + "name": "Succeeded", + "value": "Succeeded", + "description": "The webhook is delivered successfully." + }, + { + "name": "Failed", + "value": "Failed", + "description": "The webhook is failed to deliver." + }, + { + "name": "NotStarted", + "value": "NotStarted", + "description": "The webhook is not delivered." + } + ] + }, + "readOnly": true + }, + "DownloadResponse": { + "type": "object", + "description": "Object that includes all the possible response for the download operation.", + "properties": { + "resourceList": { + "type": "array", + "description": "Resource list of the report", + "items": { + "$ref": "#/definitions/ResourceItem" + }, + "readOnly": true, + "x-ms-identifiers": [ + "resourceId" + ] + }, + "complianceReport": { + "type": "array", + "description": "List of the compliance result", + "items": { + "$ref": "#/definitions/ComplianceReportItem" + }, + "readOnly": true, + "x-ms-identifiers": [ + "controlId" + ] + }, + "compliancePdfReport": { + "$ref": "#/definitions/DownloadResponseCompliancePdfReport", + "description": "Compliance pdf report", + "readOnly": true + }, + "complianceDetailedPdfReport": { + "$ref": "#/definitions/DownloadResponseComplianceDetailedPdfReport", + "description": "The detailed compliance pdf report", + "readOnly": true + } + } + }, + "DownloadResponseComplianceDetailedPdfReport": { + "type": "object", + "description": "The detailed compliance pdf report", + "properties": { + "sasUri": { + "type": "string", + "description": "The uri of detailed compliance pdf report", + "readOnly": true + } + } + }, + "DownloadResponseCompliancePdfReport": { + "type": "object", + "description": "Compliance pdf report", + "properties": { + "sasUri": { + "type": "string", + "description": "The uri of compliance pdf report", + "readOnly": true + } + } + }, + "DownloadType": { + "type": "string", + "description": "Indicates the download type.", + "enum": [ + "ComplianceReport", + "CompliancePdfReport", + "ComplianceDetailedPdfReport", + "ResourceList" + ], + "x-ms-enum": { + "name": "DownloadType", + "modelAsString": true, + "values": [ + { + "name": "ComplianceReport", + "value": "ComplianceReport", + "description": "Download the compliance report." + }, + { + "name": "CompliancePdfReport", + "value": "CompliancePdfReport", + "description": "Download the compliance pdf report." + }, + { + "name": "ComplianceDetailedPdfReport", + "value": "ComplianceDetailedPdfReport", + "description": "Download the detailed compliance pdf report." + }, + { + "name": "ResourceList", + "value": "ResourceList", + "description": "Download the resource list of the report." + } + ] + } + }, + "EnableSslVerification": { + "type": "string", + "description": "whether to enable ssl verification", + "enum": [ + "true", + "false" + ], + "x-ms-enum": { + "name": "EnableSslVerification", + "modelAsString": true, + "values": [ + { + "name": "True", + "value": "true", + "description": "The ssl verification is enabled." + }, + { + "name": "False", + "value": "false", + "description": "The ssl verification is not enabled." + } + ] + } + }, + "EvidenceFileDownloadRequest": { + "type": "object", + "description": "Evidence file's download request.", + "properties": { + "reportCreatorTenantId": { + "type": "string", + "description": "Tenant id." + }, + "offerGuid": { + "type": "string", + "description": "The offerGuid which mapping to the reports.", + "minLength": 1 + } + } + }, + "EvidenceFileDownloadResponse": { + "type": "object", + "description": "Object that includes all the possible response for the evidence file download operation.", + "properties": { + "evidenceFile": { + "$ref": "#/definitions/EvidenceFileDownloadResponseEvidenceFile", + "description": "The uri of evidence file", + "readOnly": true + } + } + }, + "EvidenceFileDownloadResponseEvidenceFile": { + "type": "object", + "description": "The uri of evidence file", + "properties": { + "url": { + "type": "string", + "description": "The url of evidence file", + "readOnly": true + } + } + }, + "EvidenceProperties": { + "type": "object", + "description": "Evidence's properties.", + "properties": { + "evidenceType": { + "$ref": "#/definitions/EvidenceType", + "description": "Evidence type." + }, + "filePath": { + "type": "string", + "description": "The path of the file in storage." + }, + "extraData": { + "type": "string", + "description": "Extra data considered as evidence." + }, + "controlId": { + "type": "string", + "description": "Control id." + }, + "responsibilityId": { + "type": "string", + "description": "Responsibility id." + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Azure lifecycle management", + "readOnly": true + } + }, + "required": [ + "filePath" + ] + }, + "EvidenceResource": { + "type": "object", + "description": "A class represent an AppComplianceAutomation evidence resource.", + "properties": { + "properties": { + "$ref": "#/definitions/EvidenceProperties", + "description": "Evidence property.", + "x-ms-client-flatten": true, + "x-ms-client-name": "properties" + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ] + }, + "EvidenceResourceListResult": { + "type": "object", + "description": "The response of a EvidenceResource list operation.", + "properties": { + "value": { + "type": "array", + "description": "The EvidenceResource items on this page", + "items": { + "$ref": "#/definitions/EvidenceResource" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "EvidenceType": { + "type": "string", + "description": "Evidence type", + "enum": [ + "File", + "AutoCollectedEvidence", + "Data" + ], + "x-ms-enum": { + "name": "EvidenceType", + "modelAsString": true, + "values": [ + { + "name": "File", + "value": "File", + "description": "The evidence is a file." + }, + { + "name": "AutoCollectedEvidence", + "value": "AutoCollectedEvidence", + "description": "The evidence auto collected by App Compliance Automation." + }, + { + "name": "Data", + "value": "Data", + "description": "The evidence is data." + } + ] + } + }, + "GetCollectionCountRequest": { + "type": "object", + "description": "Get collection count's request object.", + "properties": { + "type": { + "type": "string", + "description": "The resource type." + } + } + }, + "GetCollectionCountResponse": { + "type": "object", + "description": "The get collection count response.", + "properties": { + "count": { + "type": "integer", + "format": "int32", + "description": "The count of the specified resource." + } + } + }, + "GetOverviewStatusRequest": { + "type": "object", + "description": "Get overview status request object.", + "properties": { + "type": { + "type": "string", + "description": "The resource type." + } + } + }, + "GetOverviewStatusResponse": { + "type": "object", + "description": "The get overview status response.", + "properties": { + "statusList": { + "type": "array", + "description": "List of different status items.", + "items": { + "$ref": "#/definitions/StatusItem" + }, + "x-ms-identifiers": [ + "statusName" + ] + } + } + }, + "InputType": { + "type": "string", + "description": "Question input type.", + "enum": [ + "None", + "Text", + "Email", + "MultilineText", + "Url", + "Number", + "Boolean", + "Telephone", + "YesNoNa", + "Date", + "YearPicker", + "SingleSelection", + "SingleSelectDropdown", + "MultiSelectCheckbox", + "MultiSelectDropdown", + "MultiSelectDropdownCustom", + "Group", + "Upload" + ], + "x-ms-enum": { + "name": "InputType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "None", + "description": "The input type is a text box." + }, + { + "name": "Text", + "value": "Text", + "description": "The input content is text string." + }, + { + "name": "Email", + "value": "Email", + "description": "The input content should be an email address." + }, + { + "name": "MultilineText", + "value": "MultilineText", + "description": "The input content should be multiline text." + }, + { + "name": "Url", + "value": "Url", + "description": "The input content should be a URL." + }, + { + "name": "Number", + "value": "Number", + "description": "The input content should be a number." + }, + { + "name": "Boolean", + "value": "Boolean", + "description": "The input content should be a boolean." + }, + { + "name": "Telephone", + "value": "Telephone", + "description": "The input content should be a telephone number." + }, + { + "name": "YesNoNa", + "value": "YesNoNa", + "description": "The input content should be Yes, No or Na." + }, + { + "name": "Date", + "value": "Date", + "description": "The input content should be a date." + }, + { + "name": "YearPicker", + "value": "YearPicker", + "description": "The input content is a Year, pick from the dropdown list." + }, + { + "name": "SingleSelection", + "value": "SingleSelection", + "description": "The input content is a single result seleted from the options." + }, + { + "name": "SingleSelectDropdown", + "value": "SingleSelectDropdown", + "description": "The input content is a single result seleted from the dropdown options." + }, + { + "name": "MultiSelectCheckbox", + "value": "MultiSelectCheckbox", + "description": "The input content are multiple results seleted from the checkboxes." + }, + { + "name": "MultiSelectDropdown", + "value": "MultiSelectDropdown", + "description": "The input content are multiple results seleted from the dropdown options." + }, + { + "name": "MultiSelectDropdownCustom", + "value": "MultiSelectDropdownCustom", + "description": "The input content are result seleted from the custom dropdown options." + }, + { + "name": "Group", + "value": "Group", + "description": "The input content is a group of answers." + }, + { + "name": "Upload", + "value": "Upload", + "description": "The input content is a uploaded file." + } + ] + } + }, + "IsRecommendSolution": { + "type": "string", + "description": "Indicates whether this solution is the recommended.", + "enum": [ + "true", + "false" + ], + "x-ms-enum": { + "name": "IsRecommendSolution", + "modelAsString": true, + "values": [ + { + "name": "True", + "value": "true", + "description": "This solution is the recommended." + }, + { + "name": "False", + "value": "false", + "description": "This solution is not the recommended." + } + ] + } + }, + "ListInUseStorageAccountsRequest": { + "type": "object", + "description": "Parameters for listing in use storage accounts operation. If subscription list is null, it will check the user's all subscriptions.", + "properties": { + "subscriptionIds": { + "type": "array", + "description": "List of subscription ids to be query. If the list is null or empty, the API will query all the subscriptions of the user.", + "items": { + "type": "string" + } + } + } + }, + "ListInUseStorageAccountsResponse": { + "type": "object", + "description": "Parameters for listing in use storage accounts operation. If subscription list is null, it will check the user's all subscriptions.", + "properties": { + "storageAccountList": { + "type": "array", + "description": "The storage account list which in use in related reports.", + "items": { + "$ref": "#/definitions/StorageInfo" + }, + "x-ms-identifiers": [ + "accountName" + ] + } + } + }, + "NotificationEvent": { + "type": "string", + "description": "notification event.", + "enum": [ + "generate_snapshot_success", + "generate_snapshot_failed", + "assessment_failure", + "report_configuration_changes", + "report_deletion" + ], + "x-ms-enum": { + "name": "NotificationEvent", + "modelAsString": true, + "values": [ + { + "name": "generate_snapshot_success", + "value": "generate_snapshot_success", + "description": "The subscribed report's snapshot is successfully generated." + }, + { + "name": "generate_snapshot_failed", + "value": "generate_snapshot_failed", + "description": "The subscribed report's snapshot is failed to generate." + }, + { + "name": "assessment_failure", + "value": "assessment_failure", + "description": "The subscribed report failed while collecting the assessments." + }, + { + "name": "report_configuration_changes", + "value": "report_configuration_changes", + "description": "The subscribed report's configuration is changed." + }, + { + "name": "report_deletion", + "value": "report_deletion", + "description": "The subscribed report is deleted." + } + ] + } + }, + "OnboardRequest": { + "type": "object", + "description": "Parameters for onboard operation", + "properties": { + "subscriptionIds": { + "type": "array", + "description": "List of subscription ids to be onboarded", + "items": { + "type": "string" + } + } + }, + "required": [ + "subscriptionIds" + ] + }, + "OnboardResponse": { + "type": "object", + "description": "Success. The response indicates given subscriptions has been onboarded.", + "properties": { + "subscriptionIds": { + "type": "array", + "description": "List of subscription ids that are onboarded", + "items": { + "type": "string" + } + } + } + }, "OverviewStatus": { + "type": "object", "description": "The overview of the compliance result for one report.", + "properties": { + "passedCount": { + "type": "integer", + "format": "int32", + "description": "The count of all passed control.", + "readOnly": true + }, + "failedCount": { + "type": "integer", + "format": "int32", + "description": "The count of all failed control.", + "readOnly": true + }, + "manualCount": { + "type": "integer", + "format": "int32", + "description": "The count of all manual control.", + "readOnly": true + }, + "notApplicableCount": { + "type": "integer", + "format": "int32", + "description": "The count of all not applicable control.", + "readOnly": true + }, + "pendingCount": { + "type": "integer", + "format": "int32", + "description": "The count of all pending for approval control.", + "readOnly": true + } + } + }, + "ProvisioningState": { + "type": "string", + "description": "Resource provisioning states.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "Creating", + "Deleting", + "Fixing", + "Verifying", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true, + "values": [ + { + "name": "Succeeded", + "value": "Succeeded", + "description": "The provision is succeeded." + }, + { + "name": "Failed", + "value": "Failed", + "description": "The provision is failed." + }, + { + "name": "Canceled", + "value": "Canceled", + "description": "The provision is canceled." + }, + { + "name": "Creating", + "value": "Creating", + "description": "The creation is in progress." + }, + { + "name": "Deleting", + "value": "Deleting", + "description": "The deletion is in progress." + }, + { + "name": "Fixing", + "value": "Fixing", + "description": "The fix of the resource in progress." + }, + { + "name": "Verifying", + "value": "Verifying", + "description": "The verification of the resource in progress." + }, + { + "name": "Updating", + "value": "Updating", + "description": "The update of the resource in progress." + } + ] + }, + "readOnly": true + }, + "QuickAssessment": { + "type": "object", + "description": "A class represent the quick assessment.", + "properties": { + "resourceId": { + "type": "string", + "description": "Resource id.", + "readOnly": true + }, + "responsibilityId": { + "type": "string", + "description": "Responsibility id.", + "readOnly": true + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC).", + "readOnly": true + }, + "resourceStatus": { + "$ref": "#/definitions/ResourceStatus", + "description": "Quick assessment status.", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "Quick assessment display name.", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Quick assessment display name.", + "readOnly": true + }, + "remediationLink": { + "type": "string", + "description": "Link to remediation steps for this quick assessment.", + "readOnly": true + } + } + }, + "Recommendation": { + "type": "object", + "description": "A class represent the recommendation.", + "properties": { + "recommendationId": { + "type": "string", + "description": "The Id of the recommendation.", + "readOnly": true + }, + "recommendationShortName": { + "type": "string", + "description": "The short name of the recommendation. e.g. \"Invalid TLS config\"", + "readOnly": true + }, + "recommendationSolutions": { + "type": "array", + "description": "List of recommendation solutions.", + "items": { + "$ref": "#/definitions/RecommendationSolution" + }, + "readOnly": true, + "x-ms-identifiers": [ + "recommendationSolutionIndex" + ] + } + } + }, + "RecommendationSolution": { + "type": "object", + "description": "A class represent the recommendation solution.", + "properties": { + "recommendationSolutionIndex": { + "type": "string", + "description": "The index of the recommendation solution.", + "readOnly": true + }, + "recommendationSolutionContent": { + "type": "string", + "description": "The detail steps of the recommendation solution.", + "readOnly": true + }, + "isRecommendSolution": { + "$ref": "#/definitions/IsRecommendSolution", + "description": "Indicates whether this solution is the recommended.", + "readOnly": true + } + } + }, + "ReportBaseProperties": { + "type": "object", + "description": "Report's properties.", + "properties": { + "status": { + "$ref": "#/definitions/ReportStatus", + "description": "Report status.", + "readOnly": true + }, + "errors": { + "type": "array", + "description": "List of report error codes.", + "items": { + "type": "string" + }, + "readOnly": true + }, + "tenantId": { + "type": "string", + "description": "Report's tenant id.", + "readOnly": true + }, + "offerGuid": { + "type": "string", + "description": "A list of comma-separated offerGuids indicates a series of offerGuids that map to the report. For example, \"00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002\" and \"00000000-0000-0000-0000-000000000003\"." + }, + "nextTriggerTime": { + "type": "string", + "format": "date-time", + "description": "Report next collection trigger time.", + "readOnly": true + }, + "lastTriggerTime": { + "type": "string", + "format": "date-time", + "description": "Report last collection trigger time.", + "readOnly": true + }, + "subscriptions": { + "type": "array", + "description": "List of subscription Ids.", + "items": { + "type": "string" + }, + "readOnly": true + }, + "complianceStatus": { + "$ref": "#/definitions/ReportComplianceStatus", + "description": "Report compliance status.", + "readOnly": true + }, + "storageInfo": { + "$ref": "#/definitions/StorageInfo", + "description": "The information of 'bring your own storage' binding to the report" + }, + "certRecords": { + "type": "array", + "description": "List of synchronized certification records.", + "items": { + "$ref": "#/definitions/CertSyncRecord" + }, + "readOnly": true, + "x-ms-identifiers": [ + "offerGuid" + ] + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Azure lifecycle management", + "readOnly": true + } + } + }, + "ReportComplianceStatus": { + "type": "object", + "description": "A list which includes all the compliance result for one report.", + "properties": { + "m365": { + "$ref": "#/definitions/OverviewStatus", + "description": "The Microsoft 365 certification name.", + "readOnly": true + } + } + }, + "ReportFixResult": { + "type": "object", + "description": "Report fix result.", + "properties": { + "result": { + "$ref": "#/definitions/Result", + "description": "Indicates whether the fix action is Succeeded or Failed.", + "readOnly": true + }, + "reason": { + "type": "string", + "description": "If the report fix action failed, to indicate the detailed failed reason.", + "readOnly": true + } + } + }, + "ReportPatchProperties": { + "type": "object", + "description": "Patch Report's properties.", + "properties": { + "triggerTime": { + "type": "string", + "format": "date-time", + "description": "Report collection trigger time." + }, + "timeZone": { + "type": "string", + "description": "Report collection trigger time's time zone, the available list can be obtained by executing \"Get-TimeZone -ListAvailable\" in PowerShell.\nAn example of valid timezone id is \"Pacific Standard Time\"." + }, + "resources": { + "type": "array", + "description": "List of resource data.", + "items": { + "$ref": "#/definitions/ResourceMetadata" + }, + "x-ms-identifiers": [ + "resourceId" + ] + }, + "status": { + "$ref": "#/definitions/ReportStatus", + "description": "Report status.", + "readOnly": true + }, + "errors": { + "type": "array", + "description": "List of report error codes.", + "items": { + "type": "string" + }, + "readOnly": true + }, + "tenantId": { + "type": "string", + "description": "Report's tenant id.", + "readOnly": true + }, + "offerGuid": { + "type": "string", + "description": "A list of comma-separated offerGuids indicates a series of offerGuids that map to the report. For example, \"00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002\" and \"00000000-0000-0000-0000-000000000003\"." + }, + "nextTriggerTime": { + "type": "string", + "format": "date-time", + "description": "Report next collection trigger time.", + "readOnly": true + }, + "lastTriggerTime": { + "type": "string", + "format": "date-time", + "description": "Report last collection trigger time.", + "readOnly": true + }, + "subscriptions": { + "type": "array", + "description": "List of subscription Ids.", + "items": { + "type": "string" + }, + "readOnly": true + }, + "complianceStatus": { + "$ref": "#/definitions/ReportComplianceStatus", + "description": "Report compliance status.", + "readOnly": true + }, + "storageInfo": { + "$ref": "#/definitions/StorageInfo", + "description": "The information of 'bring your own storage' binding to the report" + }, + "certRecords": { + "type": "array", + "description": "List of synchronized certification records.", + "items": { + "$ref": "#/definitions/CertSyncRecord" + }, + "readOnly": true, + "x-ms-identifiers": [ + "offerGuid" + ] + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Azure lifecycle management", + "readOnly": true + } + } + }, + "ReportProperties": { + "type": "object", + "description": "Create Report's properties.", + "properties": { + "triggerTime": { + "type": "string", + "format": "date-time", + "description": "Report collection trigger time." + }, + "timeZone": { + "type": "string", + "description": "Report collection trigger time's time zone, the available list can be obtained by executing \"Get-TimeZone -ListAvailable\" in PowerShell.\nAn example of valid timezone id is \"Pacific Standard Time\"." + }, + "resources": { + "type": "array", + "description": "List of resource data.", + "items": { + "$ref": "#/definitions/ResourceMetadata" + }, + "x-ms-identifiers": [ + "resourceId" + ] + }, + "status": { + "$ref": "#/definitions/ReportStatus", + "description": "Report status.", + "readOnly": true + }, + "errors": { + "type": "array", + "description": "List of report error codes.", + "items": { + "type": "string" + }, + "readOnly": true + }, + "tenantId": { + "type": "string", + "description": "Report's tenant id.", + "readOnly": true + }, + "offerGuid": { + "type": "string", + "description": "A list of comma-separated offerGuids indicates a series of offerGuids that map to the report. For example, \"00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002\" and \"00000000-0000-0000-0000-000000000003\"." + }, + "nextTriggerTime": { + "type": "string", + "format": "date-time", + "description": "Report next collection trigger time.", + "readOnly": true + }, + "lastTriggerTime": { + "type": "string", + "format": "date-time", + "description": "Report last collection trigger time.", + "readOnly": true + }, + "subscriptions": { + "type": "array", + "description": "List of subscription Ids.", + "items": { + "type": "string" + }, + "readOnly": true + }, + "complianceStatus": { + "$ref": "#/definitions/ReportComplianceStatus", + "description": "Report compliance status.", + "readOnly": true + }, + "storageInfo": { + "$ref": "#/definitions/StorageInfo", + "description": "The information of 'bring your own storage' binding to the report" + }, + "certRecords": { + "type": "array", + "description": "List of synchronized certification records.", + "items": { + "$ref": "#/definitions/CertSyncRecord" + }, + "readOnly": true, + "x-ms-identifiers": [ + "offerGuid" + ] + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Azure lifecycle management", + "readOnly": true + } + }, + "required": [ + "triggerTime", + "timeZone", + "resources" + ] + }, + "ReportResource": { + "type": "object", + "description": "A class represent an AppComplianceAutomation report resource.", + "properties": { + "properties": { + "$ref": "#/definitions/ReportProperties", + "description": "Report property.", + "x-ms-client-flatten": true, + "x-ms-client-name": "properties" + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ] + }, + "ReportResourceListResult": { + "type": "object", + "description": "The response of a ReportResource list operation.", + "properties": { + "value": { + "type": "array", + "description": "The ReportResource items on this page", + "items": { + "$ref": "#/definitions/ReportResource" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "ReportResourcePatch": { + "type": "object", + "description": "A class represent a AppComplianceAutomation report resource update properties.", + "properties": { + "properties": { + "$ref": "#/definitions/ReportPatchProperties", + "description": "Report property." + } + } + }, + "ReportStatus": { + "type": "string", + "description": "Report status.", + "enum": [ + "Active", + "Failed", + "Reviewing", + "Disabled" + ], + "x-ms-enum": { + "name": "ReportStatus", + "modelAsString": true, + "values": [ + { + "name": "Active", + "value": "Active", + "description": "The report is active." + }, + { + "name": "Failed", + "value": "Failed", + "description": "The report is failed." + }, + { + "name": "Reviewing", + "value": "Reviewing", + "description": "The report is under reviewing." + }, + { + "name": "Disabled", + "value": "Disabled", + "description": "The report is disabled." + } + ] + } + }, + "ReportVerificationResult": { "type": "object", + "description": "Report health status verification result.", "properties": { - "passedCount": { - "format": "int32", - "type": "integer", - "description": "The count of all passed full automation control." - }, - "failedCount": { - "format": "int32", - "type": "integer", - "description": "The count of all failed full automation control." + "result": { + "$ref": "#/definitions/Result", + "description": "Indicates whether the report verification action is Succeeded or Failed.", + "readOnly": true }, - "manualCount": { - "format": "int32", - "type": "integer", - "description": "The count of all manual control." + "reason": { + "type": "string", + "description": "If the report verification action failed, to indicate the detailed failed reason.", + "readOnly": true } } }, - "ReportComplianceStatus": { + "ResourceItem": { "type": "object", - "readOnly": true, - "description": "A list which includes all the compliance result for one report.", + "description": "Resource Id.", "properties": { - "m365": { - "description": "The Microsoft 365 certification name.", - "$ref": "#/definitions/OverviewStatus" + "subscriptionId": { + "type": "string", + "description": "The subscription Id of this resource.", + "readOnly": true + }, + "resourceGroup": { + "type": "string", + "description": "The resource group name of this resource.", + "readOnly": true + }, + "resourceType": { + "type": "string", + "description": "The resource type of this resource. e.g. \"Microsoft.SignalRService/SignalR\"", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "The resource Id - e.g. \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1\".", + "readOnly": true } } }, "ResourceMetadata": { "type": "object", "description": "Single resource Id's metadata.", - "required": [ - "resourceId" - ], "properties": { "resourceId": { - "description": "Resource Id - e.g. \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1\".", - "type": "string" + "type": "string", + "description": "Resource Id - e.g. \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1\"." }, "resourceType": { - "description": "Resource type.", - "type": "string" + "type": "string", + "description": "Resource type. e.g. \"Microsoft.Compute/virtualMachines\"" }, "resourceKind": { - "description": "Resource kind.", - "type": "string" - }, - "resourceName": { - "description": "Resource name.", - "type": "string" - }, - "tags": { - "type": "object", - "description": "Resource's tag type.", - "additionalProperties": { - "description": "Tag properties.", - "type": "string" - } + "type": "string", + "description": "Resource kind." + }, + "resourceOrigin": { + "$ref": "#/definitions/ResourceOrigin", + "description": "Resource Origin." + }, + "accountId": { + "type": "string", + "description": "Account Id. For example - the AWS account id." } + }, + "required": [ + "resourceId" + ] + }, + "ResourceOrigin": { + "type": "string", + "description": "Resource Origin.", + "enum": [ + "Azure", + "AWS", + "GCP" + ], + "x-ms-enum": { + "name": "ResourceOrigin", + "modelAsString": true, + "values": [ + { + "name": "Azure", + "value": "Azure", + "description": "The resource is from Azure." + }, + { + "name": "AWS", + "value": "AWS", + "description": "The resource is from AWS." + }, + { + "name": "GCP", + "value": "GCP", + "description": "The resource is from GCP." + } + ] } }, - "ReportProperties": { - "type": "object", - "description": "Report's properties.", - "required": [ - "timeZone", - "triggerTime", - "resources" + "ResourceStatus": { + "type": "string", + "description": "Indicates the resource status.", + "enum": [ + "Healthy", + "Unhealthy" ], + "x-ms-enum": { + "name": "ResourceStatus", + "modelAsString": true, + "values": [ + { + "name": "Healthy", + "value": "Healthy", + "description": "The resource is healthy." + }, + { + "name": "Unhealthy", + "value": "Unhealthy", + "description": "The resource is unhealthy." + } + ] + } + }, + "Responsibility": { + "type": "object", + "description": "A class represent the customer responsibility.", "properties": { - "id": { + "responsibilityId": { "type": "string", - "description": "Report id in database.", + "description": "The id of the customer responsibility.", "readOnly": true }, - "status": { - "description": "Report status.", - "enum": [ - "Active", - "Failed", - "Disabled" - ], - "readOnly": true, - "type": "string", - "x-ms-enum": { - "name": "ReportStatus", - "modelAsString": true - } - }, - "tenantId": { + "responsibilityTitle": { "type": "string", - "description": "Report's tenant id.", + "description": "The title of the customer responsibility.", "readOnly": true }, - "reportName": { - "description": "Report name.", + "responsibilityDescription": { "type": "string", + "description": "The description of the customer responsibility.", "readOnly": true }, - "offerGuid": { - "description": "Report offer Guid.", - "type": "string" - }, - "timeZone": { - "type": "string", - "description": "Report collection trigger time's time zone, the available list can be obtained by executing \"Get-TimeZone -ListAvailable\" in PowerShell.\r\nAn example of valid timezone id is \"Pacific Standard Time\"." + "responsibilityType": { + "$ref": "#/definitions/ResponsibilityType", + "description": "The type of customer responsibility.", + "readOnly": true }, - "triggerTime": { - "format": "date-time", - "description": "Report collection trigger time.", - "type": "string" + "responsibilitySeverity": { + "$ref": "#/definitions/ResponsibilitySeverity", + "description": "The severity level of this customer responsibility.", + "readOnly": true }, - "nextTriggerTime": { - "format": "date-time", - "type": "string", - "description": "Report next collection trigger time.", + "responsibilityStatus": { + "$ref": "#/definitions/ResponsibilityStatus", + "description": "The status of this customer responsibility.", "readOnly": true }, - "lastTriggerTime": { - "format": "date-time", - "type": "string", - "description": "Report last collection trigger time.", + "responsibilityEnvironment": { + "$ref": "#/definitions/ResponsibilityEnvironment", + "description": "The supported cloud environment of this customer responsibility.", "readOnly": true }, - "subscriptions": { + "failedResourceCount": { + "type": "integer", + "format": "int32", + "description": "The count of all failed resources." + }, + "totalResourceCount": { + "type": "integer", + "format": "int32", + "description": "The count of all resources." + }, + "resourceList": { "type": "array", - "description": "List of subscription Ids.", + "description": "List of resource.", "items": { - "type": "string", - "description": "Single subscription Id." + "$ref": "#/definitions/ResponsibilityResource" }, - "readOnly": true + "readOnly": true, + "x-ms-identifiers": [ + "resourceId" + ] }, - "resources": { + "recommendationList": { "type": "array", - "description": "List of resource data.", + "description": "List of recommendation.", "items": { - "description": "Single resource metadata.", - "$ref": "#/definitions/ResourceMetadata" + "$ref": "#/definitions/Recommendation" }, + "readOnly": true, "x-ms-identifiers": [ - "resourceId" + "recommendationId" ] }, - "complianceStatus": { - "readOnly": true, - "description": "Report compliance status.", - "$ref": "#/definitions/ReportComplianceStatus" + "guidance": { + "type": "string", + "description": "The evidence upload guidance description.", + "readOnly": true }, - "provisioningState": { - "readOnly": true, - "description": "Azure lifecycle management", - "$ref": "#/definitions/ProvisioningState" - } - } - }, - "ReportResource": { - "type": "object", - "description": "A class represent an AppComplianceAutomation report resource.", - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" - } - ], - "properties": { - "properties": { - "description": "Report property.", - "$ref": "#/definitions/ReportProperties" - } - }, - "required": [ - "properties" - ] - }, - "ReportResourcePatch": { - "type": "object", - "description": "A class represent a AppComplianceAutomation report resource update properties.", - "properties": { - "properties": { - "description": "Report property.", - "$ref": "#/definitions/ReportProperties" + "justification": { + "type": "string", + "description": "The justification given by the user to clarify the reason.", + "readOnly": true + }, + "evidenceFiles": { + "type": "array", + "description": "List of evidence file url.", + "items": { + "type": "string" + } } } }, - "CategoryStatus": { - "description": "Indicates the category status.", - "enum": [ - "Healthy", - "Unhealthy" - ], - "readOnly": true, + "ResponsibilityEnvironment": { "type": "string", - "x-ms-enum": { - "name": "CategoryStatus", - "modelAsString": true - } - }, - "ControlFamilyStatus": { - "description": "Indicates the control family status.", + "description": "Indicates the customer responsibility supported cloud environment.", "enum": [ - "Healthy", - "Unhealthy" + "Azure", + "AWS", + "GCP", + "General" ], - "readOnly": true, - "type": "string", "x-ms-enum": { - "name": "ControlFamilyStatus", - "modelAsString": true + "name": "ResponsibilityEnvironment", + "modelAsString": true, + "values": [ + { + "name": "Azure", + "value": "Azure", + "description": "The responsibility is supported in Azure." + }, + { + "name": "AWS", + "value": "AWS", + "description": "The responsibility is supported in AWS." + }, + { + "name": "GCP", + "value": "GCP", + "description": "The responsibility is supported in GCP." + }, + { + "name": "General", + "value": "General", + "description": "The responsibility is general requirement of all environment." + } + ] } }, - "ControlStatus": { - "description": "Indicates the control status.", - "enum": [ - "Passed", - "Failed", - "NotApplicable" - ], - "readOnly": true, - "type": "string", - "x-ms-enum": { - "name": "ControlStatus", - "modelAsString": true + "ResponsibilityResource": { + "type": "object", + "description": "A class represent the resource.", + "properties": { + "resourceId": { + "type": "string", + "description": "The Id of the resource.", + "readOnly": true + }, + "accountId": { + "type": "string", + "description": "Account Id. For example - AWS account Id.", + "readOnly": true + }, + "resourceType": { + "type": "string", + "description": "The type of the resource. e.g. \"Microsoft.SignalRService/SignalR\"", + "readOnly": true + }, + "resourceOrigin": { + "$ref": "#/definitions/ResourceOrigin", + "description": "Resource origin.", + "readOnly": true + }, + "resourceStatus": { + "$ref": "#/definitions/ResourceStatus", + "description": "Resource status.", + "readOnly": true + }, + "resourceStatusChangeDate": { + "type": "string", + "format": "date-time", + "description": "The status change date for the resource.", + "readOnly": true + }, + "recommendationIds": { + "type": "array", + "description": "List of recommendation id.", + "items": { + "type": "string" + } + } } }, - "AssessmentSeverity": { - "description": "Indicates the assessment severity.", + "ResponsibilitySeverity": { + "type": "string", + "description": "Indicates the customer responsibility severity.", "enum": [ "High", "Medium", "Low" ], - "readOnly": true, - "type": "string", "x-ms-enum": { - "name": "AssessmentSeverity", - "modelAsString": true + "name": "ResponsibilitySeverity", + "modelAsString": true, + "values": [ + { + "name": "High", + "value": "High", + "description": "The responsibility is high severity." + }, + { + "name": "Medium", + "value": "Medium", + "description": "The responsibility is medium severity." + }, + { + "name": "Low", + "value": "Low", + "description": "The responsibility is low severity." + } + ] } }, - "ControlType": { - "description": "Indicates the control type.", + "ResponsibilityStatus": { + "type": "string", + "description": "Indicates the customer responsibility status.", "enum": [ - "FullyAutomated", - "PartiallyAutomated", - "Manual" + "Passed", + "Failed", + "NotApplicable", + "PendingApproval" ], - "readOnly": true, - "type": "string", "x-ms-enum": { - "name": "ControlType", - "modelAsString": true + "name": "ResponsibilityStatus", + "modelAsString": true, + "values": [ + { + "name": "Passed", + "value": "Passed", + "description": "The responsibility is passed." + }, + { + "name": "Failed", + "value": "Failed", + "description": "The responsibility is failed." + }, + { + "name": "NotApplicable", + "value": "NotApplicable", + "description": "The responsibility is not applicable." + }, + { + "name": "PendingApproval", + "value": "PendingApproval", + "description": "The responsibility is pending for approval." + } + ] } }, - "ControlFamilyType": { - "description": "Indicates the control family type.", + "ResponsibilityType": { + "type": "string", + "description": "Indicates the customer responsibility type.", "enum": [ - "FullyAutomated", - "PartiallyAutomated", + "Automated", + "ScopedManual", "Manual" ], - "readOnly": true, - "type": "string", "x-ms-enum": { - "name": "ControlFamilyType", - "modelAsString": true + "name": "ResponsibilityType", + "modelAsString": true, + "values": [ + { + "name": "Automated", + "value": "Automated", + "description": "The responsibility is automated." + }, + { + "name": "ScopedManual", + "value": "ScopedManual", + "description": "The responsibility is scoped manual." + }, + { + "name": "Manual", + "value": "Manual", + "description": "The responsibility is manual." + } + ] } }, - "CategoryType": { - "description": "Indicates the compliance category type.", + "Result": { + "type": "string", + "description": "Indicates whether the fix action is Succeeded or Failed.", "enum": [ - "FullyAutomated", - "PartiallyAutomated", - "Manual" + "Succeeded", + "Failed" ], - "readOnly": true, - "type": "string", "x-ms-enum": { - "name": "CategoryType", - "modelAsString": true - } + "name": "Result", + "modelAsString": true, + "values": [ + { + "name": "Succeeded", + "value": "Succeeded", + "description": "The result is succeeded." + }, + { + "name": "Failed", + "value": "Failed", + "description": "The result is failed." + } + ] + }, + "readOnly": true }, - "ResourceStatus": { - "description": "Indicates the resource status.", + "Rule": { + "type": "string", + "description": "Scoping question rule.", "enum": [ - "Healthy", - "Unhealthy", - "NotApplicable" + "Required", + "CharLength", + "Url", + "Urls", + "Domains", + "USPrivacyShield", + "PublicSOX", + "FismaFedramp", + "CreditCardPCI", + "AzureApplication", + "ValidGuid", + "PublisherVerification", + "DynamicDropdown", + "PreventNonEnglishChar", + "ValidEmail" ], - "readOnly": true, - "type": "string", "x-ms-enum": { - "name": "ResourceStatus", - "modelAsString": true + "name": "Rule", + "modelAsString": true, + "values": [ + { + "name": "Required", + "value": "Required", + "description": "The question is required to answer." + }, + { + "name": "CharLength", + "value": "CharLength", + "description": "The question answer length is limited." + }, + { + "name": "Url", + "value": "Url", + "description": "The question answer should be an Url." + }, + { + "name": "Urls", + "value": "Urls", + "description": "The question answer should be Urls." + }, + { + "name": "Domains", + "value": "Domains", + "description": "The question answer should be domains." + }, + { + "name": "USPrivacyShield", + "value": "USPrivacyShield", + "description": "The question answer should be a UsPrivacyShield." + }, + { + "name": "PublicSOX", + "value": "PublicSOX", + "description": "The question answer should be a PublicSOX." + }, + { + "name": "FismaFedramp", + "value": "FismaFedramp", + "description": "The question answer should be a FismaFedramp." + }, + { + "name": "CreditCardPCI", + "value": "CreditCardPCI", + "description": "The question answer should be a CreditCardPCI." + }, + { + "name": "AzureApplication", + "value": "AzureApplication", + "description": "The question answer should be an AzureApplication." + }, + { + "name": "ValidGuid", + "value": "ValidGuid", + "description": "The question answer should be a valid guid." + }, + { + "name": "PublisherVerification", + "value": "PublisherVerification", + "description": "The question answer should be publisher verification." + }, + { + "name": "DynamicDropdown", + "value": "DynamicDropdown", + "description": "The question answer should be dynamic dropdown." + }, + { + "name": "PreventNonEnglishChar", + "value": "PreventNonEnglishChar", + "description": "The question answer should prevent non-english char." + }, + { + "name": "ValidEmail", + "value": "ValidEmail", + "description": "The question answer should be a valid email." + } + ] } }, - "Assessment": { + "ScopingAnswer": { "type": "object", - "description": "A class represent the assessment.", + "description": "Scoping answer.", "properties": { - "name": { - "description": "The name of the assessment.", - "type": "string", - "readOnly": true - }, - "severity": { - "$ref": "#/definitions/AssessmentSeverity", - "readOnly": true, - "description": "The severity level of this assessment." - }, - "description": { - "description": "The description of the assessment.", + "questionId": { "type": "string", - "readOnly": true - }, - "remediation": { - "description": "The remediation of the assessment.", - "type": "string", - "readOnly": true + "description": "Question id.", + "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, - "isPass": { - "type": "string", - "enum": [ - "True", - "False" - ], - "readOnly": true, - "description": "Indicates whether all the resource(s) are compliant.", - "x-ms-enum": { - "name": "IsPass", - "modelAsString": true + "answers": { + "type": "array", + "description": "Question answer value list.", + "items": { + "type": "string" } - }, - "policyId": { - "description": "The policy id mapping to this assessment.", - "type": "string", - "readOnly": true - }, - "resourceList": { - "readOnly": true, + } + }, + "required": [ + "questionId", + "answers" + ] + }, + "ScopingConfigurationProperties": { + "type": "object", + "description": "ScopingConfiguration's properties.", + "properties": { + "answers": { "type": "array", - "description": "List of resource assessments.", + "description": "List of scoping question answers.", "items": { - "description": "Single resource metadata.", - "$ref": "#/definitions/AssessmentResource" + "$ref": "#/definitions/ScopingAnswer" }, "x-ms-identifiers": [ - "resourceId" + "questionId" ] + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Azure lifecycle management", + "readOnly": true } } }, - "AssessmentResource": { + "ScopingConfigurationResource": { "type": "object", - "description": "A class represent the assessment resource.", + "description": "A class represent an AppComplianceAutomation scoping configuration resource.", "properties": { - "resourceId": { - "description": "The Id of the resource.", - "type": "string", - "readOnly": true - }, - "resourceStatus": { - "description": "Resource status.", - "readOnly": true, - "$ref": "#/definitions/ResourceStatus" - }, - "reason": { - "description": "The reason for the N/A resource.", - "type": "string", - "readOnly": true - }, - "statusChangeDate": { - "description": "The status change date for the resource. For unavailable date, set it as N/A.", - "type": "string", - "readOnly": true + "properties": { + "$ref": "#/definitions/ScopingConfigurationProperties", + "description": "ScopingConfiguration property.", + "x-ms-client-flatten": true, + "x-ms-client-name": "properties" } - } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ] }, - "Control": { + "ScopingConfigurationResourceListResult": { "type": "object", - "description": "A class represent the control.", + "description": "The response of a ScopingConfigurationResource list operation.", "properties": { - "controlId": { - "description": "The Id of the control. e.g. \"Operational Security#10\"", - "type": "string", - "readOnly": true - }, - "controlShortName": { - "description": "The short name of the control. e.g. \"Unsupported OS and Software.\"", - "type": "string", - "readOnly": true + "value": { + "type": "array", + "description": "The ScopingConfigurationResource items on this page", + "items": { + "$ref": "#/definitions/ScopingConfigurationResource" + } }, - "controlFullName": { - "description": "The full name of the control. e.g. \"Validate that unsupported operating systems and software components are not in use.\"", + "nextLink": { "type": "string", - "readOnly": true - }, - "controlType": { - "description": "The control type ", - "$ref": "#/definitions/ControlType", - "readOnly": true - }, - "controlDescription": { - "description": "The control's description", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "ScopingQuestion": { + "type": "object", + "description": "The definition of a scoping question.", + "properties": { + "questionId": { "type": "string", + "description": "Question id.", "readOnly": true }, - "controlDescriptionHyperLink": { - "description": "The hyper link to the control's description'.", + "superiorQuestionId": { "type": "string", + "description": "Superior question id.", "readOnly": true }, - "controlStatus": { - "description": "Control status.", - "$ref": "#/definitions/ControlStatus", + "inputType": { + "$ref": "#/definitions/InputType", + "description": "Input type of the question answer.", "readOnly": true }, - "assessments": { - "readOnly": true, + "optionIds": { "type": "array", - "description": "List of assessments.", + "description": "Option id list.", "items": { - "description": "Single assessment content.", - "$ref": "#/definitions/Assessment" + "type": "string" }, - "x-ms-identifiers": [ - "name" - ] - } - } - }, - "ControlFamily": { - "type": "object", - "description": "A class represent the control family.", - "properties": { - "familyName": { - "description": "The name of the control family. e.g. \"Malware Protection - Anti-Virus\"", - "type": "string", - "readOnly": true - }, - "familyType": { - "description": "The control family type ", - "$ref": "#/definitions/ControlFamilyType", "readOnly": true }, - "familyStatus": { - "readOnly": true, - "description": "Control family status.", - "$ref": "#/definitions/ControlFamilyStatus" - }, - "controls": { - "readOnly": true, + "rules": { "type": "array", - "description": "List of controls.", + "description": "The rule of the question.", "items": { - "description": "Single control content.", - "$ref": "#/definitions/Control" + "$ref": "#/definitions/Rule" }, - "x-ms-identifiers": [ - "controlId" - ] - } - } - }, - "Category": { - "type": "object", - "description": "A class represent the compliance category.", - "properties": { - "categoryName": { - "description": "The name of the compliance category. e.g. \"Operational Security\"", - "type": "string", "readOnly": true }, - "categoryType": { - "description": "The category type ", - "$ref": "#/definitions/CategoryType", + "showSubQuestionsValue": { + "type": "string", + "description": "The answer value to show the sub questions.", "readOnly": true - }, - "categoryStatus": { - "readOnly": true, - "description": "Category status.", - "$ref": "#/definitions/CategoryStatus" - }, - "controlFamilies": { - "readOnly": true, - "type": "array", - "description": "List of control families.", - "items": { - "description": "Single control family content.", - "$ref": "#/definitions/ControlFamily" - }, - "x-ms-identifiers": [ - "familyName" - ] } } }, - "ComplianceResult": { + "ScopingQuestions": { "type": "object", - "description": "A class represent the compliance result.", + "description": "Scoping question list.", "properties": { - "complianceName": { - "description": "The name of the compliance. e.g. \"M365\"", - "type": "string", - "readOnly": true - }, - "categories": { - "readOnly": true, + "questions": { "type": "array", - "description": "List of categories.", + "description": "List of scoping questions.", "items": { - "description": "Single category content.", - "$ref": "#/definitions/Category" + "$ref": "#/definitions/ScopingQuestion" }, "x-ms-identifiers": [ - "categoryName" + "questionId" ] } } }, + "SendAllEvents": { + "type": "string", + "description": "whether to send notification under any event.", + "enum": [ + "true", + "false" + ], + "x-ms-enum": { + "name": "SendAllEvents", + "modelAsString": true, + "values": [ + { + "name": "True", + "value": "true", + "description": "Need send notification under any event." + }, + { + "name": "False", + "value": "false", + "description": "No need to send notification under any event." + } + ] + } + }, "SnapshotDownloadRequest": { "type": "object", "description": "Snapshot's download request.", - "required": [ - "downloadType" - ], "properties": { "reportCreatorTenantId": { - "description": "Tenant id.", - "type": "string" + "type": "string", + "description": "Tenant id." }, "downloadType": { - "description": "Indicates the download type.", - "x-ms-parameter-location": "method", - "enum": [ - "ComplianceReport", - "CompliancePdfReport", - "ComplianceDetailedPdfReport", - "ResourceList" - ], - "type": "string", - "x-ms-enum": { - "name": "DownloadType", - "modelAsString": true - } + "$ref": "#/definitions/DownloadType", + "description": "Indicates the download type." }, "offerGuid": { "type": "string", "description": "The offerGuid which mapping to the reports.", - "x-ms-parameter-location": "method", "minLength": 1 } - } + }, + "required": [ + "downloadType" + ] }, "SnapshotProperties": { "type": "object", "description": "Snapshot's properties.", "properties": { - "id": { - "description": "Snapshot id in the database.", - "type": "string", - "readOnly": true - }, "snapshotName": { - "description": "Snapshot name.", "type": "string", + "description": "Snapshot name.", "readOnly": true }, "createdAt": { @@ -1046,337 +4141,491 @@ "readOnly": true }, "provisioningState": { - "readOnly": true, + "$ref": "#/definitions/ProvisioningState", "description": "Azure lifecycle management", - "$ref": "#/definitions/ProvisioningState" + "readOnly": true }, "reportProperties": { - "readOnly": true, + "$ref": "#/definitions/ReportProperties", "description": "The report essential info.", - "$ref": "#/definitions/ReportProperties" + "readOnly": true }, "reportSystemData": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/systemData" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/systemData", + "description": "Metadata pertaining to creation and last modification of the resource.", + "readOnly": true }, "complianceResults": { - "readOnly": true, "type": "array", "description": "List of compliance results.", "items": { - "description": "Single compliance result.", "$ref": "#/definitions/ComplianceResult" }, - "x-ms-identifiers": [] + "readOnly": true, + "x-ms-identifiers": [ + "complianceName" + ] } } }, "SnapshotResource": { "type": "object", "description": "A class represent a AppComplianceAutomation snapshot resource.", - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" - } - ], "properties": { "properties": { + "$ref": "#/definitions/SnapshotProperties", "description": "Snapshot's property'.", - "readOnly": true, - "$ref": "#/definitions/SnapshotProperties" + "x-ms-client-flatten": true, + "x-ms-client-name": "properties" } - } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ] }, - "ReportResourceList": { - "description": "Object that includes an array of resources and a possible link for next set.", + "SnapshotResourceListResult": { "type": "object", + "description": "The response of a SnapshotResource list operation.", "properties": { "value": { - "description": "List of the reports", "type": "array", - "readOnly": true, + "description": "The SnapshotResource items on this page", "items": { - "$ref": "#/definitions/ReportResource" + "$ref": "#/definitions/SnapshotResource" } }, "nextLink": { - "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", - "type": "string" + "type": "string", + "format": "uri", + "description": "The link to the next page of items" } - } + }, + "required": [ + "value" + ] }, - "SnapshotResourceList": { - "description": "Object that includes an array of resources and a possible link for next set.", + "StatusItem": { "type": "object", + "description": "Single status.", "properties": { - "value": { - "description": "List of the snapshots", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/SnapshotResource" - } + "statusName": { + "type": "string", + "description": "Status name - e.g. \"Active\", \"Failed\"." }, - "nextLink": { - "description": "The URL the client should use to fetch the next page (per server side paging).\r\nIt's null for now, added for future use.", - "type": "string" + "statusValue": { + "type": "string", + "description": "Status value. e.g. \"100\", or \"100%\"." } } }, - "ResourceItem": { + "StorageInfo": { "type": "object", - "description": "Resource Id.", + "description": "The information of 'bring your own storage' account binding to the report", "properties": { "subscriptionId": { - "description": "The subscription Id of this resource.", "type": "string", - "readOnly": true + "description": "The subscription id which 'bring your own storage' account belongs to" }, "resourceGroup": { - "description": "The resource group name of this resource.", "type": "string", - "readOnly": true + "description": "The resourceGroup which 'bring your own storage' account belongs to" }, - "resourceType": { - "description": "The resource type of this resource.", + "accountName": { "type": "string", - "readOnly": true + "description": "'bring your own storage' account name" }, - "resourceId": { - "description": "The resource Id - e.g. \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1\".", + "location": { "type": "string", - "readOnly": true + "description": "The region of 'bring your own storage' account" } } }, - "DownloadResponse": { - "description": "Object that includes all the possible response for the download operation.", + "SyncCertRecordRequest": { "type": "object", + "description": "Synchronize certification record request.", "properties": { - "resourceList": { - "description": "List of the reports", + "certRecord": { + "$ref": "#/definitions/CertSyncRecord", + "description": "certification record to be synchronized." + } + }, + "required": [ + "certRecord" + ] + }, + "SyncCertRecordResponse": { + "type": "object", + "description": "Synchronize certification record response.", + "properties": { + "certRecord": { + "$ref": "#/definitions/CertSyncRecord", + "description": "certification record synchronized." + } + } + }, + "TriggerEvaluationProperty": { + "type": "object", + "description": "Trigger evaluation response.", + "properties": { + "triggerTime": { + "type": "string", + "format": "date-time", + "description": "The time when the evaluation is triggered.", + "readOnly": true + }, + "evaluationEndTime": { + "type": "string", + "format": "date-time", + "description": "The time when the evaluation is end.", + "readOnly": true + }, + "resourceIds": { "type": "array", - "readOnly": true, + "description": "List of resource ids to be evaluated", "items": { - "$ref": "#/definitions/ResourceItem" + "type": "string" }, - "x-ms-identifiers": [] + "x-ms-identifiers": [ + "resourceId" + ] }, - "complianceReport": { - "description": "List of the compliance result", + "quickAssessments": { "type": "array", - "readOnly": true, + "description": "List of quick assessments", "items": { - "$ref": "#/definitions/ComplianceReportItem" + "$ref": "#/definitions/QuickAssessment" }, - "x-ms-identifiers": [] - }, - "compliancePdfReport": { - "description": "compliance pdf report", - "type": "object", - "readOnly": true, - "properties": { - "sasUri": { - "description": "uri of compliance pdf report", - "type": "string", - "readOnly": true, - "x-ms-secret": true - } - } - }, - "complianceDetailedPdfReport": { - "description": "compliance detailed pdf report", - "type": "object", - "readOnly": true, - "properties": { - "sasUri": { - "description": "uri of compliance detailed pdf report", - "type": "string", - "readOnly": true - } + "x-ms-identifiers": [ + "resourceId" + ] + } + } + }, + "TriggerEvaluationRequest": { + "type": "object", + "description": "Trigger evaluation request.", + "properties": { + "resourceIds": { + "type": "array", + "description": "List of resource ids to be evaluated", + "items": { + "type": "string" } } + }, + "required": [ + "resourceIds" + ] + }, + "TriggerEvaluationResponse": { + "type": "object", + "description": "Trigger evaluation response.", + "properties": { + "properties": { + "$ref": "#/definitions/TriggerEvaluationProperty", + "description": "trigger evaluation property." + } } }, - "ComplianceReportItem": { + "UpdateWebhookKey": { + "type": "string", + "description": "whether to update webhookKey.", + "enum": [ + "true", + "false" + ], + "x-ms-enum": { + "name": "UpdateWebhookKey", + "modelAsString": true, + "values": [ + { + "name": "True", + "value": "true", + "description": "Need update the webhook key." + }, + { + "name": "False", + "value": "false", + "description": "No need to update the webhook key." + } + ] + } + }, + "Versions": { + "type": "string", + "description": "The available API versions.", + "enum": [ + "2024-06-27" + ], + "x-ms-enum": { + "name": "Versions", + "modelAsString": true, + "values": [ + { + "name": "v2024_05_14", + "value": "2024-06-27", + "description": "The 2024-06-27 API version." + } + ] + } + }, + "WebhookKeyEnabled": { + "type": "string", + "description": "whether webhookKey is enabled.", + "enum": [ + "true", + "false" + ], + "x-ms-enum": { + "name": "WebhookKeyEnabled", + "modelAsString": true, + "values": [ + { + "name": "True", + "value": "true", + "description": "The webhookKey is enabled." + }, + { + "name": "False", + "value": "false", + "description": "The webhookKey is not enabled." + } + ] + } + }, + "WebhookProperties": { "type": "object", - "description": "Object that includes all the content for single compliance result.", + "description": "Webhook properties.", "properties": { - "categoryName": { + "webhookId": { "type": "string", - "description": "The category name.", + "description": "Webhook id in database.", "readOnly": true }, - "controlId": { - "type": "string", - "description": "The control Id - e.g. \"1\".", - "readOnly": true + "status": { + "$ref": "#/definitions/WebhookStatus", + "description": "Webhook status." }, - "controlName": { + "tenantId": { "type": "string", - "description": "The control name.", + "description": "Tenant id.", "readOnly": true }, - "controlType": { - "type": "string", - "description": "The control type.", - "$ref": "#/definitions/ControlType", - "readOnly": true + "sendAllEvents": { + "$ref": "#/definitions/SendAllEvents", + "description": "whether to send notification under any event." }, - "complianceState": { - "type": "string", - "enum": [ - "Healthy", - "Unhealthy" - ], - "x-ms-enum": { - "name": "ComplianceState", - "modelAsString": true - }, - "description": "The compliance result's status.", - "readOnly": true + "events": { + "type": "array", + "description": "under which event notification should be sent.", + "items": { + "$ref": "#/definitions/NotificationEvent" + } }, - "policyId": { + "payloadUrl": { "type": "string", - "description": "The compliance result mapped policy Id.", - "readOnly": true + "description": "webhook payload url", + "pattern": "^(http(s)?://)[\\S]{0,64994}$" }, - "policyDisplayName": { - "type": "string", - "description": "The policy's display name.", - "readOnly": true + "contentType": { + "$ref": "#/definitions/ContentType", + "description": "content type" }, - "policyDescription": { + "webhookKey": { "type": "string", - "description": "The policy's detail description.", - "readOnly": true + "description": "webhook secret token. If not set, this field value is null; otherwise, please set a string value.", + "pattern": "^.{0,2048}$" }, - "subscriptionId": { - "type": "string", - "description": "The compliance result mapped subscription Id.", - "readOnly": true + "updateWebhookKey": { + "$ref": "#/definitions/UpdateWebhookKey", + "description": "whether to update webhookKey." }, - "resourceGroup": { - "type": "string", - "description": "The compliance result mapped resource group.", + "webhookKeyEnabled": { + "$ref": "#/definitions/WebhookKeyEnabled", + "description": "whether webhookKey is enabled.", "readOnly": true }, - "resourceType": { - "type": "string", - "description": "The compliance result mapped resource type.", + "enableSslVerification": { + "$ref": "#/definitions/EnableSslVerification", + "description": "whether to enable ssl verification" + }, + "deliveryStatus": { + "$ref": "#/definitions/DeliveryStatus", + "description": "webhook deliveryStatus", "readOnly": true }, - "resourceId": { - "type": "string", - "description": "The compliance result mapped resource Id - e.g. \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1\".", + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Azure Resource Provisioning State", "readOnly": true + } + } + }, + "WebhookResource": { + "type": "object", + "description": "A class represent an AppComplianceAutomation webhook resource.", + "properties": { + "properties": { + "$ref": "#/definitions/WebhookProperties", + "description": "Webhook property.", + "x-ms-client-flatten": true, + "x-ms-client-name": "properties" + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ] + }, + "WebhookResourceListResult": { + "type": "object", + "description": "The response of a WebhookResource list operation.", + "properties": { + "value": { + "type": "array", + "description": "The WebhookResource items on this page", + "items": { + "$ref": "#/definitions/WebhookResource" + } }, - "statusChangeDate": { - "description": "The compliance result last changed date - e.g. \"2022-10-24T02:55:16.3274379Z\". For unavailable date, set it as \"N/A\".", + "nextLink": { "type": "string", - "readOnly": true + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "WebhookResourcePatch": { + "type": "object", + "description": "A class represent a AppComplianceAutomation webhook resource update properties.", + "properties": { + "properties": { + "$ref": "#/definitions/WebhookProperties", + "description": "Webhook property." } } }, - "ProvisioningState": { + "WebhookStatus": { "type": "string", - "description": "Resource provisioning states.", + "description": "Webhook status.", "enum": [ - "Succeeded", - "Failed", - "Canceled", - "Creating", - "Deleting", - "Updating" + "Enabled", + "Disabled" ], - "readOnly": true, "x-ms-enum": { - "name": "provisioningState", - "modelAsString": true + "name": "WebhookStatus", + "modelAsString": true, + "values": [ + { + "name": "Enabled", + "value": "Enabled", + "description": "The webhook is enabled." + }, + { + "name": "Disabled", + "value": "Disabled", + "description": "The webhook is disabled." + } + ] } } }, "parameters": { - "ReportNameParameter": { - "name": "reportName", - "in": "path", - "description": "Report Name.", - "required": true, + "ExtraParameter.offerGuid": { + "name": "offerGuid", + "in": "query", + "description": "The offerGuid which mapping to the reports.", + "required": false, "type": "string", - "pattern": "^[-a-zA-Z0-9_]+$", + "minLength": 1, "x-ms-parameter-location": "method" }, - "SnapshotNameParameter": { - "name": "snapshotName", - "in": "path", - "description": "Snapshot Name.", - "required": true, + "ExtraParameter.reportCreatorTenantId": { + "name": "reportCreatorTenantId", + "in": "query", + "description": "The tenant id of the report creator.", + "required": false, "type": "string", + "minLength": 1, "x-ms-parameter-location": "method" }, - "SkipTokenParameter": { - "name": "$skipToken", - "description": "Skip over when retrieving results.", + "QueryParameters.filter": { + "name": "$filter", "in": "query", + "description": "The filter to apply on the operation.", "required": false, "type": "string", - "x-ms-parameter-location": "method" + "minLength": 1, + "x-ms-parameter-location": "method", + "x-ms-client-name": "filter" }, - "TopParameter": { - "name": "$top", - "description": "Number of elements to return when retrieving results.", + "QueryParameters.offerGuid": { + "name": "offerGuid", "in": "query", + "description": "The offerGuid which mapping to the reports.", "required": false, - "type": "integer", - "minimum": 1, - "maximum": 100, - "format": "int32", + "type": "string", + "minLength": 1, "x-ms-parameter-location": "method" }, - "OfferGuidParameter": { - "name": "offerGuid", + "QueryParameters.orderby": { + "name": "$orderby", "in": "query", + "description": "OData order by query option.", "required": false, "type": "string", - "description": "The offerGuid which mapping to the reports.", + "minLength": 1, "x-ms-parameter-location": "method", - "minLength": 1 + "x-ms-client-name": "orderby" }, - "ReportCreatorTenantIdParameter": { + "QueryParameters.reportCreatorTenantId": { "name": "reportCreatorTenantId", "in": "query", + "description": "The tenant id of the report creator.", + "required": false, "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method" + }, + "QueryParameters.select": { + "name": "$select", + "in": "query", + "description": "OData Select statement. Limits the properties on each entry to just those requested, e.g. ?$select=reportName,id.", "required": false, - "description": "The tenant id of the report creator.", + "type": "string", + "minLength": 1, "x-ms-parameter-location": "method", - "minLength": 1 + "x-ms-client-name": "select" }, - "DownloadTypeParameter": { - "name": "downloadType", + "QueryParameters.skipToken": { + "name": "$skipToken", "in": "query", - "required": true, - "description": "Indicates the download type.", - "x-ms-parameter-location": "method", - "enum": [ - "ComplianceReport", - "CompliancePdfReport", - "ComplianceDetailedPdfReport", - "ResourceList" - ], + "description": "Skip over when retrieving results.", + "required": false, "type": "string", - "x-ms-enum": { - "name": "DownloadType", - "modelAsString": true - } + "x-ms-parameter-location": "method", + "x-ms-client-name": "skipToken" }, - "SelectParameter": { - "name": "$select", + "QueryParameters.top": { + "name": "$top", "in": "query", + "description": "Number of elements to return when retrieving results.", "required": false, - "type": "string", - "description": "OData Select statement. Limits the properties on each entry to just those requested, e.g. ?$select=reportName,id.", + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 100, "x-ms-parameter-location": "method", - "minLength": 1 + "x-ms-client-name": "top" } } } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_CreateOrUpdate.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_CreateOrUpdate.json new file mode 100644 index 000000000000..41184da1447a --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_CreateOrUpdate.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "evidenceName": "evidence1", + "parameters": { + "properties": { + "controlId": "Operational_Security_10", + "evidenceType": "File", + "filePath": "/test-byos/evidence1.png", + "responsibilityId": "authorized_ip_ranges_should_be_defined_on_kubernetes_services" + } + }, + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "name": "evidence1", + "type": "Microsfot.AppComplianceAutomation/reports/evidences", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/evidences/evidence1", + "properties": { + "controlId": "Operational_Security_10", + "evidenceType": "File", + "extraData": "sampleData", + "filePath": "/acat-container/evidence1.png", + "provisioningState": "Succeeded", + "responsibilityId": "authorized_ip_ranges_should_be_defined_on_kubernetes_services" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "name": "evidence1", + "type": "Microsfot.AppComplianceAutomation/reports/evidences", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/evidences/evidence1", + "properties": { + "controlId": "Operational_Security_10", + "evidenceType": "File", + "extraData": "sampleData", + "filePath": "/acat-container/evidence1.png", + "provisioningState": "Succeeded", + "responsibilityId": "authorized_ip_ranges_should_be_defined_on_kubernetes_services" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Evidences_CreateOrUpdate", + "title": "Evidences_CreateOrUpdate" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Delete.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Delete.json new file mode 100644 index 000000000000..59a9ab820681 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "evidenceName": "evidence1", + "reportName": "testReportName" + }, + "responses": { + "200": {}, + "204": {} + }, + "operationId": "Evidences_Delete", + "title": "Evidences_Delete" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Download.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Download.json new file mode 100644 index 000000000000..cbbf140454e5 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Download.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "evidenceName": "evidence1", + "parameters": { + "offerGuid": "00000000-0000-0000-0000-000000000000", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000" + }, + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "evidenceFile": { + "url": "this is a url" + } + } + } + }, + "operationId": "Evidences_Download", + "title": "Evidences_Download" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Get.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Get.json new file mode 100644 index 000000000000..510d8971ae53 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "evidenceName": "evidence1", + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "name": "evidence1", + "type": "Microsfot.AppComplianceAutomation/reports/evidences", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/evidences/evidence1", + "properties": { + "controlId": "Operational_Security_10", + "evidenceType": "File", + "extraData": "sampleData", + "filePath": "/acat-container/evidence1.png", + "provisioningState": "Succeeded", + "responsibilityId": "authorized_ip_ranges_should_be_defined_on_kubernetes_services" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Evidences_Get", + "title": "Evidences_Get" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_ListByReport.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_ListByReport.json new file mode 100644 index 000000000000..260d1be6e40f --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_ListByReport.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "reportName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "evidence1", + "type": "Microsfot.AppComplianceAutomation/reports/evidences", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/evidences/evidence1", + "properties": { + "controlId": "Operational_Security_10", + "evidenceType": "File", + "extraData": "sampleData", + "filePath": "/acat-container/evidence1.png", + "provisioningState": "Succeeded", + "responsibilityId": "authorized_ip_ranges_should_be_defined_on_kubernetes_services" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "Evidences_ListByReport", + "title": "Evidences_ListByReport" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ListInUseStorageAccountsWithSubscriptions.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ListInUseStorageAccountsWithSubscriptions.json new file mode 100644 index 000000000000..e5596d869abe --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ListInUseStorageAccountsWithSubscriptions.json @@ -0,0 +1,33 @@ +{ + "operationId": "ProviderActions_ListInUseStorageAccounts", + "title": "ListInUseStorageAccountsWithSubscriptions", + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "subscriptionIds": [ + "0000000-0000-0000-0000-000000000001", + "0000000-0000-0000-0000-000000000002" + ] + } + }, + "responses": { + "200": { + "body": { + "storageAccountList": [ + { + "subscriptionId": "0000000-0000-0000-0000-000000000001", + "resourceGroup": "tetsRG", + "accountName": "SA_name1", + "location": "WEST US" + }, + { + "subscriptionId": "0000000-0000-0000-0000-000000000001", + "resourceGroup": "tetsRG", + "accountName": "SA_name2", + "location": "WEST US" + } + ] + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ListInUseStorageAccountsWithoutSubscriptions.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ListInUseStorageAccountsWithoutSubscriptions.json new file mode 100644 index 000000000000..7b9ccfcd9e83 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ListInUseStorageAccountsWithoutSubscriptions.json @@ -0,0 +1,28 @@ +{ + "operationId": "ProviderActions_ListInUseStorageAccounts", + "title": "ListInUseStorageAccountsWithoutSubscriptions", + "parameters": { + "api-version": "2024-06-27", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "storageAccountList": [ + { + "subscriptionId": "0000000-0000-0000-0000-000000000001", + "resourceGroup": "tetsRG", + "accountName": "SA_name1", + "location": "WEST US" + }, + { + "subscriptionId": "0000000-0000-0000-0000-000000000001", + "resourceGroup": "tetsRG", + "accountName": "SA_name2", + "location": "WEST US" + } + ] + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Onboard.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Onboard.json new file mode 100644 index 000000000000..3aaaff41bbd4 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Onboard.json @@ -0,0 +1,29 @@ +{ + "operationId": "ProviderActions_Onboard", + "title": "Onboard", + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "subscriptionIds": [ + "00000000-0000-0000-0000-000000000000", + "00000000-0000-0000-0000-000000000001" + ] + } + }, + "responses": { + "200": { + "body": { + "subscriptionIds": [ + "00000000-0000-0000-0000-000000000000", + "00000000-0000-0000-0000-000000000001" + ] + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Operations_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Operations_List.json index f4b5562acbd9..289f672cdec0 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Operations_List.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Operations_List.json @@ -1,10 +1,11 @@ { + "title": "Operations_List", + "operationId": "Operations_List", "parameters": { "api-version": "2024-06-27" }, "responses": { "200": { - "headers": {}, "body": { "value": [ { diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json index f7610aa145de..f918df4dcc81 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json @@ -1,117 +1,149 @@ { "parameters": { + "api-version": "2024-06-27", "parameters": { "properties": { - "offerGuid": "0000", - "timeZone": "GMT Standard Time", - "triggerTime": "2022-03-04T05:11:56.197Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", "resources": [ { - "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint", - "tags": { - "key1": "value1" - } + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" } - ] + ], + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-04T05:00:00.000Z" } }, - "api-version": "2024-06-27", "reportName": "testReportName" }, "responses": { "200": { "body": { - "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", "name": "testReportName", "type": "Microsfot.AppComplianceAutomation/reports", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", "properties": { - "id": "00000000-0000-0000-0000-000000000000", - "status": "Active", - "tenantId": "00000000-0000-0000-0000-000000000000", - "reportName": "testReportName", - "offerGuid": "00000000-0000-0000-0000-000000000000", - "timeZone": "GMT Standard Time", - "triggerTime": "2022-03-02T05:17:23.922Z", - "nextTriggerTime": "2022-03-02T05:17:23.922Z", - "lastTriggerTime": "2022-03-02T05:17:23.922Z", - "subscriptions": [ - "00000000-0000-0000-0000-000000000000" - ], - "resources": [ + "certRecords": [ { - "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", - "tags": { - "key1": "value1" - } + "certificationStatus": "CertIngestion", + "controls": [ + { + "controlId": "Operational_Security_10", + "controlStatus": "Approved" + } + ], + "ingestionStatus": "EvidenceResubmitted", + "offerGuid": "00000000-0000-0000-0000-000000000001" } ], - "provisioningState": "Succeeded", "complianceStatus": { "m365": { - "passedCount": 0, "failedCount": 0, - "manualCount": 0 + "manualCount": 0, + "passedCount": 0 } - } + }, + "lastTriggerTime": "2022-03-02T05:00:00.000Z", + "nextTriggerTime": "2022-03-02T05:00:00.000Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "provisioningState": "Succeeded", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" + } + ], + "status": "Active", + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "tenantId": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:00:00.000Z" }, "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", "createdBy": "00000000-0000-0000-0000-000000000000", "createdByType": "User", - "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", "lastModifiedBy": "00000000-0000-0000-0000-000000000000", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + "lastModifiedByType": "User" } } }, "201": { "body": { - "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", "name": "testReportName", "type": "Microsfot.AppComplianceAutomation/reports", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", "properties": { - "id": "00000000-0000-0000-0000-000000000000", - "status": "Active", - "tenantId": "00000000-0000-0000-0000-000000000000", - "reportName": "testReportName", - "offerGuid": "00000000-0000-0000-0000-000000000000", - "timeZone": "GMT Standard Time", - "triggerTime": "2022-03-02T05:17:23.922Z", - "nextTriggerTime": "2022-03-02T05:17:23.922Z", - "lastTriggerTime": "2022-03-02T05:17:23.922Z", - "subscriptions": [ - "00000000-0000-0000-0000-000000000000" - ], - "resources": [ - { - "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", - "tags": { - "key1": "value1" - } - } - ], "complianceStatus": { "m365": { - "passedCount": 0, "failedCount": 0, - "manualCount": 0 + "manualCount": 0, + "passedCount": 0 } }, - "provisioningState": "Succeeded" + "lastTriggerTime": "2022-03-02T05:00:00.000Z", + "nextTriggerTime": "2022-03-02T05:00:00.000Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "provisioningState": "Succeeded", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" + } + ], + "status": "Active", + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "tenantId": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:00:00.000Z" }, "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", "createdBy": "00000000-0000-0000-0000-000000000000", "createdByType": "User", - "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", "lastModifiedBy": "00000000-0000-0000-0000-000000000000", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + "lastModifiedByType": "User" } }, "headers": { - "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", - "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" } } - } + }, + "operationId": "Reports_CreateOrUpdate", + "title": "Report_CreateOrUpdate" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json index 04401b984dec..c253f72017a6 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json @@ -4,13 +4,14 @@ "reportName": "testReportName" }, "responses": { - "200": {}, "202": { "headers": { - "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", - "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" } }, "204": {} - } + }, + "operationId": "Reports_Delete", + "title": "Report_Delete" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Fix.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Fix.json new file mode 100644 index 000000000000..26ff98f180aa --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Fix.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReport" + }, + "responses": { + "200": { + "body": { + "reason": "", + "result": "Succeeded" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Reports_Fix", + "title": "Report_Fix" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json index 2cedea2a7656..9141822657c9 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json @@ -6,48 +6,75 @@ "responses": { "200": { "body": { - "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", "name": "testReportName", "type": "Microsfot.AppComplianceAutomation/reports", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", "properties": { - "id": "00000000-0000-0000-0000-000000000000", - "status": "Active", - "tenantId": "00000000-0000-0000-0000-000000000000", - "reportName": "testReportName", - "offerGuid": "00000000-0000-0000-0000-000000000000", - "timeZone": "GMT Standard Time", - "triggerTime": "2022-03-02T05:17:23.922Z", - "nextTriggerTime": "2022-03-02T05:17:23.922Z", - "lastTriggerTime": "2022-03-02T05:17:23.922Z", - "subscriptions": [ - "00000000-0000-0000-0000-000000000000" - ], - "resources": [ + "certRecords": [ { - "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", - "tags": { - "key1": "value1" - } + "certificationStatus": "CertIngestion", + "controls": [ + { + "controlId": "Operational_Security_10", + "controlStatus": "Approved" + } + ], + "ingestionStatus": "EvidenceResubmitted", + "offerGuid": "00000000-0000-0000-0000-000000000001" } ], "complianceStatus": { "m365": { - "passedCount": 0, "failedCount": 0, - "manualCount": 0 + "manualCount": 0, + "passedCount": 0 } }, - "provisioningState": "Succeeded" + "errors": [ + "resource-inaccessible" + ], + "lastTriggerTime": "2022-03-02T05:00:00.000Z", + "nextTriggerTime": "2022-03-02T05:00:00.000Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "provisioningState": "Succeeded", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" + } + ], + "status": "Failed", + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "tenantId": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:00:00.000Z" }, "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", "createdBy": "00000000-0000-0000-0000-000000000000", "createdByType": "User", - "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", "lastModifiedBy": "00000000-0000-0000-0000-000000000000", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "Reports_Get", + "title": "Report_Get" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json index 298618bb8931..611d8b5ebfa8 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json @@ -1,123 +1,109 @@ { "parameters": { + "api-version": "2024-06-27", "parameters": { "properties": { - "offerGuid": "0000", - "timeZone": "GMT Standard Time", - "triggerTime": "2022-03-04T05:11:56.197Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", "resources": [ { - "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint", - "tags": { - "key1": "value1" - } + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" } - ] + ], + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-04T05:00:00.000Z" } }, - "api-version": "2024-06-27", "reportName": "testReportName" }, "responses": { "200": { "body": { - "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", "name": "testReportName", "type": "Microsfot.AppComplianceAutomation/reports", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", "properties": { - "id": "00000000-0000-0000-0000-000000000000", - "status": "Active", - "tenantId": "00000000-0000-0000-0000-000000000000", - "reportName": "testReportName", - "offerGuid": "00000000-0000-0000-0000-000000000000", - "timeZone": "GMT Standard Time", - "triggerTime": "2022-03-02T05:17:23.922Z", - "nextTriggerTime": "2022-03-02T05:17:23.922Z", - "lastTriggerTime": "2022-03-02T05:17:23.922Z", - "subscriptions": [ - "00000000-0000-0000-0000-000000000000" - ], - "resources": [ + "certRecords": [ { - "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", - "tags": { - "key1": "value1" - } + "certificationStatus": "CertIngestion", + "controls": [ + { + "controlId": "Operational_Security_10", + "controlStatus": "Approved" + } + ], + "ingestionStatus": "EvidenceResubmitted", + "offerGuid": "00000000-0000-0000-0000-000000000001" } ], "complianceStatus": { "m365": { - "passedCount": 0, "failedCount": 0, - "manualCount": 0 + "manualCount": 0, + "passedCount": 0 } }, - "provisioningState": "Succeeded" - }, - "systemData": { - "createdBy": "00000000-0000-0000-0000-000000000000", - "createdByType": "User", - "createdAt": "2021-05-14T22:34:55.4499903Z", - "lastModifiedBy": "00000000-0000-0000-0000-000000000000", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" - } - } - }, - "201": { - "body": { - "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", - "name": "testReportName", - "type": "Microsfot.AppComplianceAutomation/reports", - "properties": { - "id": "00000000-0000-0000-0000-000000000000", - "status": "Active", - "tenantId": "00000000-0000-0000-0000-000000000000", - "reportName": "testReportName", - "offerGuid": "00000000-0000-0000-0000-000000000000", - "timeZone": "GMT Standard Time", - "triggerTime": "2022-03-02T05:17:23.922Z", - "nextTriggerTime": "2022-03-02T05:17:23.922Z", - "lastTriggerTime": "2022-03-02T05:17:23.922Z", - "subscriptions": [ - "00000000-0000-0000-0000-000000000000" - ], + "lastTriggerTime": "2022-03-02T05:00:00.000Z", + "nextTriggerTime": "2022-03-02T05:00:00.000Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "provisioningState": "Succeeded", "resources": [ { "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", - "tags": { - "key1": "value1" - } + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" } ], - "complianceStatus": { - "m365": { - "passedCount": 0, - "failedCount": 0, - "manualCount": 0 - } + "status": "Active", + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" }, - "provisioningState": "Succeeded" + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "tenantId": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:00:00.000Z" }, "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", "createdBy": "00000000-0000-0000-0000-000000000000", "createdByType": "User", - "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", "lastModifiedBy": "00000000-0000-0000-0000-000000000000", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + "lastModifiedByType": "User" } - }, - "headers": { - "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", - "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" } }, "202": { "headers": { - "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", - "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" } } - } + }, + "operationId": "Reports_Update", + "title": "Report_Update" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Verify.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Verify.json new file mode 100644 index 000000000000..e41d7293a90b --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Verify.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReport" + }, + "responses": { + "200": { + "body": { + "reason": "", + "result": "Succeeded" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Report_Verify", + "title": "Report_Verify" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_CheckNameAvailability.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_CheckNameAvailability.json new file mode 100644 index 000000000000..e6770681424e --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_CheckNameAvailability.json @@ -0,0 +1,20 @@ +{ + "operationId": "ProviderActions_CheckNameAvailability", + "title": "Reports_CheckNameAvailability", + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "name": "reportABC", + "type": "Microsoft.AppComplianceAutomation/reports" + } + }, + "responses": { + "200": { + "body": { + "message": "An report named 'reportABC' is already in use.", + "nameAvailable": false, + "reason": "AlreadyExists" + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetCollectionCount.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetCollectionCount.json new file mode 100644 index 000000000000..32848a991284 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetCollectionCount.json @@ -0,0 +1,18 @@ +{ + "operationId": "ProviderActions_GetCollectionCount", + "title": "Reports_GetCollectionCount", + "parameters": { + "api-version": "2024-06-27", + "$filter": "Name eq 'Milk'", + "parameters": { + "type": "Microsoft.AppComplianceAutomation/reports" + } + }, + "responses": { + "200": { + "body": { + "count": 100 + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetOverviewStatus.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetOverviewStatus.json new file mode 100644 index 000000000000..8e81cec2c8bb --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetOverviewStatus.json @@ -0,0 +1,30 @@ +{ + "operationId": "ProviderActions_GetOverviewStatus", + "title": "Reports_GetOverviewStatus", + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "type": "Microsoft.AppComplianceAutomation/reports" + } + }, + "responses": { + "200": { + "body": { + "statusList": [ + { + "statusName": "Active", + "statusValue": "100" + }, + { + "statusName": "Failed", + "statusValue": "0" + }, + { + "statusName": "Disabled", + "statusValue": "0" + } + ] + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json index 55e4af509e7c..66635cccc4cc 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json @@ -1,61 +1,88 @@ { "parameters": { - "api-version": "2024-06-27", "$skipToken": "1", "$top": "100", - "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000", - "offerGuid": "00000000-0000-0000-0000-000000000000" + "api-version": "2024-06-27", + "offerGuid": "00000000-0000-0000-0000-000000000000", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000" }, "responses": { "200": { "body": { + "nextLink": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports?api-version=2024-06-27&skipToken=1&top=100", "value": [ { - "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", "name": "testReportName", "type": "Microsfot.AppComplianceAutomation/reports", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName", "properties": { - "id": "00000000-0000-0000-0000-000000000000", - "status": "Active", - "tenantId": "00000000-0000-0000-0000-000000000000", - "reportName": "testReportName", - "offerGuid": "00000000-0000-0000-0000-000000000000", - "timeZone": "GMT Standard Time", - "triggerTime": "2022-03-02T05:17:23.922Z", - "nextTriggerTime": "2022-03-02T05:17:23.922Z", - "lastTriggerTime": "2022-03-02T05:17:23.922Z", - "subscriptions": [ - "00000000-0000-0000-0000-000000000000" - ], - "resources": [ + "certRecords": [ { - "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", - "tags": { - "key1": "value1" - } + "certificationStatus": "CertIngestion", + "controls": [ + { + "controlId": "Operational_Security_10", + "controlStatus": "Approved" + } + ], + "ingestionStatus": "EvidenceResubmitted", + "offerGuid": "00000000-0000-0000-0000-000000000001" } ], "complianceStatus": { "m365": { - "passedCount": 0, "failedCount": 0, - "manualCount": 0 + "manualCount": 0, + "notApplicableCount": 0, + "passedCount": 0, + "pendingCount": 0 + } + }, + "errors": [], + "lastTriggerTime": "2022-03-02T05:00:00.000Z", + "nextTriggerTime": "2022-03-02T05:00:00.000Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "provisioningState": "Succeeded", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" } + ], + "status": "Active", + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" }, - "provisioningState": "Succeeded" + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "tenantId": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-02T05:00:00.000Z" }, "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", "createdBy": "00000000-0000-0000-0000-000000000000", "createdByType": "User", - "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", "lastModifiedBy": "00000000-0000-0000-0000-000000000000", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + "lastModifiedByType": "User" } } - ], - "nextLink": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports?api-version=2024-06-27&skipToken=1&top=100" + ] } } - } + }, + "operationId": "Reports_List", + "title": "Reports_List" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json new file mode 100644 index 000000000000..18cef3b72ecb --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "name": "evidenceABC", + "type": "Microsoft.AppComplianceAutomation/reports/evidences" + }, + "reportName": "reportABC" + }, + "responses": { + "200": { + "body": { + "message": "An evidence named 'evidenceABC' is already in use.", + "nameAvailable": false, + "reason": "AlreadyExists" + } + } + }, + "operationId": "Reports_NestedResourceCheckNameAvailability", + "title": "Reports_EvidenceCheckNameAvailability" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json new file mode 100644 index 000000000000..5b1790224b7b --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "name": "snapshotABC", + "type": "Microsoft.AppComplianceAutomation/reports/snapshots" + }, + "reportName": "reportABC" + }, + "responses": { + "200": { + "body": { + "message": "An snapshot named 'snapshotABC' is already in use.", + "nameAvailable": false, + "reason": "AlreadyExists" + } + } + }, + "operationId": "Reports_NestedResourceCheckNameAvailability", + "title": "Reports_SnapshotCheckNameAvailability" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json new file mode 100644 index 000000000000..aa1e3446fb72 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "name": "webhookABC", + "type": "Microsoft.AppComplianceAutomation/reports/webhooks" + }, + "reportName": "reportABC" + }, + "responses": { + "200": { + "body": { + "message": "An webhook named 'webhookABC' is already in use.", + "nameAvailable": false, + "reason": "AlreadyExists" + } + } + }, + "operationId": "Reports_NestedResourceCheckNameAvailability", + "title": "Reports_WebhookCheckNameAvailability" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_SyncCertRecord.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_SyncCertRecord.json new file mode 100644 index 000000000000..2dc22b5ca72c --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_SyncCertRecord.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "certRecord": { + "certificationStatus": "CertIngestion", + "controls": [ + { + "controlId": "Operational_Security_10", + "controlStatus": "Approved" + } + ], + "ingestionStatus": "EvidenceResubmitted", + "offerGuid": "00000000-0000-0000-0000-000000000001" + } + }, + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "certRecord": { + "offerGuid": "addb13fc-64bf-4005-b693-4c2f094e2187", + "certificationStatus": "CertIngestion", + "ingestionStatus": "InitialDocumentResubmitted", + "controls": [] + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Reports_SyncCertRecord", + "title": "Reports_SyncCertRecord" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_CreateOrUpdate.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_CreateOrUpdate.json new file mode 100644 index 000000000000..9b918bdc7ac2 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_CreateOrUpdate.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "properties": { + "answers": [ + { + "answers": [ + "Azure" + ], + "questionId": "GEN20_hostingEnvironment" + }, + { + "answers": [], + "questionId": "DHP_G07_customerDataProcess" + }, + { + "answers": [], + "questionId": "Tier2InitSub_serviceCommunicate" + } + ] + } + }, + "reportName": "testReportName", + "scopingConfigurationName": "default" + }, + "responses": { + "200": { + "body": { + "name": "default", + "type": "Microsoft.AppComplianceAutomation/reports/scopingConfigurations", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/scopingConfigurations/default", + "properties": { + "answers": [ + { + "answers": [ + "Azure" + ], + "questionId": "GEN20_hostingEnvironment" + }, + { + "answers": [], + "questionId": "DHP_G07_customerDataProcess" + }, + { + "answers": [], + "questionId": "Tier2InitSub_serviceCommunicate" + } + ] + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "name": "default", + "type": "Microsoft.AppComplianceAutomation/reports/scopingConfigurations", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/scopingConfigurations/default", + "properties": { + "answers": [ + { + "answers": [ + "Azure" + ], + "questionId": "GEN20_hostingEnvironment" + }, + { + "answers": [], + "questionId": "DHP_G07_customerDataProcess" + }, + { + "answers": [], + "questionId": "Tier2InitSub_serviceCommunicate" + } + ] + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "ScopingConfiguration_CreateOrUpdate", + "title": "ScopingConfiguration_CreateOrUpdate" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_Delete.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_Delete.json new file mode 100644 index 000000000000..f5a132637ae2 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName", + "scopingConfigurationName": "default" + }, + "responses": { + "200": {}, + "204": {} + }, + "operationId": "ScopingConfiguration_Delete", + "title": "ScopingConfiguration_Delete" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_Get.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_Get.json new file mode 100644 index 000000000000..5ec5a51c5190 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName", + "scopingConfigurationName": "default" + }, + "responses": { + "200": { + "body": { + "name": "default", + "type": "Microsoft.AppComplianceAutomation/reports/scopingConfigurations", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/scopingConfigurations/default", + "properties": { + "answers": [ + { + "answers": [ + "Azure" + ], + "questionId": "GEN20_hostingEnvironment" + }, + { + "answers": [], + "questionId": "DHP_G07_customerDataProcess" + }, + { + "answers": [], + "questionId": "Tier2InitSub_serviceCommunicate" + } + ] + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "ScopingConfiguration_Get", + "title": "ScopingConfiguration" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfigurations_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfigurations_List.json new file mode 100644 index 000000000000..734dd92af311 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfigurations_List.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "default", + "type": "Microsoft.AppComplianceAutomation/reports/scopingConfigurations", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/scopingConfigurations/default", + "properties": { + "answers": [ + { + "answers": [ + "Azure" + ], + "questionId": "GEN20_hostingEnvironment" + }, + { + "answers": [], + "questionId": "DHP_G07_customerDataProcess" + }, + { + "answers": [], + "questionId": "Tier2InitSub_serviceCommunicate" + } + ] + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "ScopingConfigurations_List", + "title": "ScopingConfigurations_List" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingQuestions.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingQuestions.json new file mode 100644 index 000000000000..55708a0bd0d0 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingQuestions.json @@ -0,0 +1,100 @@ +{ + "operationId": "GetScopingQuestions", + "title": "GetScopingQuestions", + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "questions": [ + { + "questionId": "DHP_G07_customerDataProcess", + "inputType": "Boolean", + "optionIds": [], + "rules": [ + "Required" + ], + "showSubQuestionsValue": "true", + "superiorQuestionId": null + }, + { + "questionId": "DHP_G04_graphPermissionData", + "inputType": "Text", + "optionIds": [], + "rules": [ + "Required", + "CharLength" + ], + "showSubQuestionsValue": null, + "superiorQuestionId": "DHP_G07_customerDataProcess" + }, + { + "questionId": "DHP_G06_customerDataStorage", + "inputType": "Boolean", + "optionIds": [], + "rules": [ + "Required" + ], + "showSubQuestionsValue": "true", + "superiorQuestionId": null + }, + { + "questionId": "DHP_G05_graphPermissionInfo", + "inputType": "Text", + "optionIds": [], + "rules": [ + "Required", + "CharLength", + "PreventNonEnglishChar" + ], + "showSubQuestionsValue": null, + "superiorQuestionId": "DHP_G06_customerDataStorage" + }, + { + "questionId": "DHP_G08_storageLocation", + "inputType": "MultiSelectDropdown", + "optionIds": [ + "Croatia", + "Cuba", + "Curaçao", + "Cyprus", + "Czechia", + "Côte d'Ivoire", + "Denmark", + "Djibouti", + "Dominica", + "Dominican Republic (the)", + "Ecuador", + "Egypt" + ], + "rules": [ + "Required" + ], + "showSubQuestionsValue": null, + "superiorQuestionId": "DHP_G06_customerDataStorage" + }, + { + "questionId": "LEG03_complianceDataTermination", + "superiorQuestionId": "DHP_G06_customerDataStorage", + "inputType": "SingleSelectEnum", + "optionIds": [], + "rules": [ + "Required" + ], + "showSubQuestionsValue": null + } + ] + }, + "systemData": { + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json new file mode 100644 index 000000000000..d4b213c0bdee --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "downloadType": "ComplianceDetailedPdfReport", + "offerGuid": "00000000-0000-0000-0000-000000000000", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000" + }, + "reportName": "testReportName", + "snapshotName": "testSnapshotName" + }, + "responses": { + "200": { + "body": { + "complianceDetailedPdfReport": { + "sasUri": "this is a uri" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Snapshots_Download", + "title": "Snapshot_Download_ComplianceDetailedPdfReport" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json new file mode 100644 index 000000000000..e016ce194119 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "downloadType": "CompliancePdfReport", + "offerGuid": "00000000-0000-0000-0000-000000000001", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000" + }, + "reportName": "testReportName", + "snapshotName": "testSnapshotName" + }, + "responses": { + "200": { + "body": { + "compliancePdfReport": { + "sasUri": "this is uri of report" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Snapshots_Download", + "title": "Snapshot_Download_CompliancePdfReport" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Report.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Report.json new file mode 100644 index 000000000000..d87ae1b85dc9 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Report.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "downloadType": "ComplianceReport", + "offerGuid": "00000000-0000-0000-0000-000000000001", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000" + }, + "reportName": "testReportName", + "snapshotName": "testSnapshotName" + }, + "responses": { + "200": { + "body": { + "complianceReport": [ + { + "categoryName": "Data Security & Privacy", + "controlFamilyName": "Incident Response", + "controlId": "Operational_Security_75", + "controlName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlStatus": "Passed", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceStatus": "Healthy", + "resourceStatusChangeDate": "2023-01-12T16:17:20.150Z", + "resourceType": "Microsoft.SignalRService/SignalR", + "responsibilityDescription": "Restrict access to the Kubernetes Service Management API by granting API access only to IP addresses in specific ranges. It is recommended to limit access to authorized IP ranges to ensure that only applications from allowed networks can access the cluster.", + "responsibilityTitle": "Authorized IP ranges should be defined on Kubernetes Services" + } + ] + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Snapshots_Download", + "title": "Snapshot_Download_ComplianceReport" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Resource_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Resource_List.json new file mode 100644 index 000000000000..34a29b24cf3e --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Resource_List.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "downloadType": "ResourceList", + "offerGuid": "00000000-0000-0000-0000-000000000001", + "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000" + }, + "reportName": "testReportName", + "snapshotName": "testSnapshotName" + }, + "responses": { + "200": { + "body": { + "resourceList": [ + { + "resourceGroup": "myResourceGroup", + "resourceId": "mySignalRService", + "resourceType": "SignalR", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + } + ] + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + }, + "operationId": "Snapshots_Download", + "title": "Snapshot_Download_ResourceList" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Get.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Get.json new file mode 100644 index 000000000000..e0ef0b724d5d --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Get.json @@ -0,0 +1,184 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName", + "snapshotName": "testSnapshot" + }, + "responses": { + "200": { + "body": { + "name": "testSnapshot", + "type": "Microsfot.AppComplianceAutomation/reports/snapshots", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/snapshots/testSnapshot", + "properties": { + "complianceResults": [ + { + "categories": [ + { + "categoryName": "Operational Security", + "categoryStatus": "Passed", + "controlFamilies": [ + { + "controlFamilyName": "Incident Response", + "controlFamilyStatus": "Passed", + "controls": [ + { + "controlDescription": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlDescriptionHyperLink": "https://aka.ms/acat/m365cert/operational/control73", + "controlFullName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlId": "Operational_Security_75", + "controlName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlStatus": "Passed", + "responsibilities": [ + { + "evidenceFiles": [ + "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports/reportABC/fileName?api-version=2024-06-27" + ], + "failedResourceCount": 0, + "guidance": "Please upload the screen capture file to ACAT service.", + "justification": "Here is my evidence files", + "recommendationList": [ + { + "recommendationId": "failed_reason_1", + "recommendationShortName": "Invalid TLS Config", + "recommendationSolutions": [ + { + "isRecommendSolution": "true", + "recommendationSolutionContent": "Setting minimal TLS version to 1.2 improves security by ensuring your SQL Managed Instance can only be accessed from clients using TLS 1.2. Using versions of TLS less than 1.2 is not recommended since they have well documented security vulnerabilities", + "recommendationSolutionIndex": "1" + } + ] + }, + { + "recommendationId": "failed_reason_2", + "recommendationShortName": "Invalid AWS TLS Config", + "recommendationSolutions": [ + { + "isRecommendSolution": "true", + "recommendationSolutionContent": "Open the AWS related service, and set its TLS version to 1.2 or higher version.", + "recommendationSolutionIndex": "1" + } + ] + } + ], + "resourceList": [ + { + "recommendationIds": [ + "failed_reason_1" + ], + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceStatus": "Unhealthy", + "resourceStatusChangeDate": "2023-01-12T16:17:20.150Z", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "recommendationIds": [ + "failed_reason_2" + ], + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceStatus": "Unhealthy", + "resourceStatusChangeDate": "2023-01-12T16:17:20.150Z", + "resourceType": "iam.user" + } + ], + "responsibilityDescription": "Restrict access to the Kubernetes Service Management API by granting API access only to IP addresses in specific ranges. It is recommended to limit access to authorized IP ranges to ensure that only applications from allowed networks can access the cluster.", + "responsibilityEnvironment": "Azure", + "responsibilityId": "authorized_ip_ranges_should_be_defined_on_kubernetes_services", + "responsibilitySeverity": "High", + "responsibilityStatus": "Passed", + "responsibilityTitle": "Authorized IP ranges should be defined on Kubernetes Services", + "responsibilityType": "Automated", + "totalResourceCount": 1 + } + ] + } + ] + } + ] + } + ], + "complianceName": "M365" + } + ], + "createdAt": "2022-03-04T15:33:59.160Z", + "provisioningState": "Succeeded", + "reportProperties": { + "certRecords": [ + { + "certificationStatus": "CertIngestion", + "controls": [ + { + "controlId": "Operational_Security_10", + "controlStatus": "Approved" + } + ], + "ingestionStatus": "EvidenceResubmitted", + "offerGuid": "00000000-0000-0000-0000-000000000001" + } + ], + "complianceStatus": { + "m365": { + "failedCount": 0, + "manualCount": 0, + "passedCount": 0 + } + }, + "errors": [], + "lastTriggerTime": "2022-03-04T15:00:00.000Z", + "nextTriggerTime": "2022-03-04T15:00:00.000Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "provisioningState": "Succeeded", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" + } + ], + "status": "Active", + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "tenantId": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-04T15:00:00.000Z" + }, + "reportSystemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + }, + "snapshotName": "testSnapshot" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Snapshots_Get", + "title": "Snapshot_Get" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json index 2e521f4994dc..7274099cf5ab 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json @@ -1,101 +1,103 @@ { "parameters": { - "api-version": "2024-06-27", "$skipToken": "1", "$top": "100", - "reportName": "testReportName", + "api-version": "2024-06-27", + "offerGuid": "00000000-0000-0000-0000-000000000001", "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000", - "offerGuid": "00000000-0000-0000-0000-000000000000" + "reportName": "testReportName" }, "responses": { "200": { "body": { + "nextLink": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports/testReportName/snapshots?api-version=2024-06-27&skipToken=1&top=100", "value": [ { - "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/snapshots/testSnapshot", "name": "testSnapshot", "type": "Microsfot.AppComplianceAutomation/reports/snapshots", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/snapshots/testSnapshot", "properties": { - "id": "00000000-0000-0000-0000-000000000000", - "snapshotName": "testSnapshot", - "createdAt": "2022-03-04T15:33:59.160Z", - "provisioningState": "Succeeded", - "reportProperties": { - "id": "00000000-0000-0000-0000-000000000000", - "status": "Active", - "tenantId": "00000000-0000-0000-0000-000000000000", - "reportName": "testReportName", - "offerGuid": "00000000-0000-0000-0000-000000000000", - "timeZone": "GMT Standard Time", - "triggerTime": "2022-03-04T15:33:59.160Z", - "nextTriggerTime": "2022-03-04T15:33:59.160Z", - "lastTriggerTime": "2022-03-04T15:33:59.160Z", - "subscriptions": [ - "00000000-0000-0000-0000-000000000000" - ], - "resources": [ - { - "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", - "tags": { - "key1": "value1" - } - } - ], - "complianceStatus": { - "m365": { - "passedCount": 0, - "failedCount": 0, - "manualCount": 0 - } - }, - "provisioningState": "Succeeded" - }, - "reportSystemData": { - "createdBy": "00000000-0000-0000-0000-000000000000", - "createdByType": "User", - "createdAt": "2021-05-14T22:34:55.4499903Z", - "lastModifiedBy": "00000000-0000-0000-0000-000000000000", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" - }, "complianceResults": [ { - "complianceName": "M365", "categories": [ { "categoryName": "Operational Security", - "categoryType": "PartiallyAutomated", - "categoryStatus": "Healthy", + "categoryStatus": "Passed", "controlFamilies": [ { - "familyName": "Incident Response", - "familyType": "PartiallyAutomated", - "familyStatus": "Healthy", + "controlFamilyName": "Incident Response", + "controlFamilyStatus": "Passed", "controls": [ { - "controlId": "Operational Security#75", - "controlShortName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlDescription": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", + "controlDescriptionHyperLink": "https://aka.ms/acat/m365cert/operational/control73", "controlFullName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", - "controlType": "Manual", - "controlDescriptionHyperLink": "https://doc.microsoft.com", + "controlId": "Operational_Security_75", + "controlName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", "controlStatus": "Passed", - "controlDescription": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", - "assessments": [ + "responsibilities": [ { - "name": "AssessmentName", - "severity": "High", - "description": "Assessment Description", - "remediation": "Remediation", - "isPass": "True", - "policyId": "00000000-0000-0000-0000-000000000000", + "evidenceFiles": [ + "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports/reportABC/fileName?api-version=2024-06-27" + ], + "failedResourceCount": 0, + "guidance": "Please upload the screen capture file to ACAT service.", + "justification": "Here is my evidence files", + "recommendationList": [ + { + "recommendationId": "failed_reason_1", + "recommendationShortName": "Invalid TLS Config", + "recommendationSolutions": [ + { + "isRecommendSolution": "true", + "recommendationSolutionContent": "Setting minimal TLS version to 1.2 improves security by ensuring your SQL Managed Instance can only be accessed from clients using TLS 1.2. Using versions of TLS less than 1.2 is not recommended since they have well documented security vulnerabilities", + "recommendationSolutionIndex": "1" + } + ] + }, + { + "recommendationId": "failed_reason_2", + "recommendationShortName": "Invalid AWS TLS Config", + "recommendationSolutions": [ + { + "isRecommendSolution": "true", + "recommendationSolutionContent": "Open the AWS related service, and set its TLS version to 1.2 or higher version.", + "recommendationSolutionIndex": "1" + } + ] + } + ], "resourceList": [ { + "recommendationIds": [ + "failed_reason_1" + ], "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", - "resourceStatus": "Healthy", - "reason": "N/A", - "statusChangeDate": "2022-03-04" + "resourceOrigin": "Azure", + "resourceStatus": "Unhealthy", + "resourceStatusChangeDate": "2023-01-12T16:17:20.150Z", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "recommendationIds": [ + "failed_reason_2" + ], + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceStatus": "Unhealthy", + "resourceStatusChangeDate": "2023-01-12T16:17:20.150Z", + "resourceType": "iam.user" } - ] + ], + "responsibilityDescription": "Restrict access to the Kubernetes Service Management API by granting API access only to IP addresses in specific ranges. It is recommended to limit access to authorized IP ranges to ensure that only applications from allowed networks can access the cluster.", + "responsibilityEnvironment": "Azure", + "responsibilityId": "authorized_ip_ranges_should_be_defined_on_kubernetes_services", + "responsibilitySeverity": "High", + "responsibilityStatus": "Passed", + "responsibilityTitle": "Authorized IP ranges should be defined on Kubernetes Services", + "responsibilityType": "Automated", + "totalResourceCount": 1 } ] } @@ -103,22 +105,90 @@ } ] } - ] + ], + "complianceName": "M365" } - ] + ], + "createdAt": "2022-03-04T15:33:59.160Z", + "provisioningState": "Succeeded", + "reportProperties": { + "certRecords": [ + { + "certificationStatus": "CertIngestion", + "controls": [ + { + "controlId": "Operational_Security_10", + "controlStatus": "Approved" + } + ], + "ingestionStatus": "EvidenceResubmitted", + "offerGuid": "00000000-0000-0000-0000-000000000001" + } + ], + "complianceStatus": { + "m365": { + "failedCount": 0, + "manualCount": 0, + "notApplicableCount": 0, + "passedCount": 0, + "pendingCount": 0 + } + }, + "errors": [], + "lastTriggerTime": "2022-03-04T15:00:00.000Z", + "nextTriggerTime": "2022-03-04T15:00:00.000Z", + "offerGuid": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002", + "provisioningState": "Succeeded", + "resources": [ + { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", + "resourceOrigin": "Azure", + "resourceType": "Microsoft.SignalRService/SignalR" + }, + { + "accountId": "000000000000", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/acat-aws/providers/microsoft.security/securityconnectors/acatawsconnector/securityentitydata/aws-iam-user-testuser", + "resourceOrigin": "AWS", + "resourceType": "iam.user" + } + ], + "status": "Active", + "storageInfo": { + "accountName": "testStorageAccount", + "location": "East US", + "resourceGroup": "testResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "subscriptions": [ + "00000000-0000-0000-0000-000000000000" + ], + "tenantId": "00000000-0000-0000-0000-000000000000", + "timeZone": "GMT Standard Time", + "triggerTime": "2022-03-04T15:00:00.000Z" + }, + "reportSystemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + }, + "snapshotName": "testSnapshot" }, "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", "createdBy": "00000000-0000-0000-0000-000000000000", "createdByType": "User", - "createdAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", "lastModifiedBy": "00000000-0000-0000-0000-000000000000", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" + "lastModifiedByType": "User" } } - ], - "nextLink": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports/testReportName/snapshots?api-version=2024-06-27&skipToken=1&top=100" + ] } } - } + }, + "operationId": "Snapshots_List", + "title": "Snapshots_List" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/TriggerEvaluation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/TriggerEvaluation.json new file mode 100644 index 000000000000..e9fd6273c264 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/TriggerEvaluation.json @@ -0,0 +1,51 @@ +{ + "operationId": "ProviderActions_TriggerEvaluation", + "title": "TriggerEvaluation", + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "resourceIds": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService" + ] + } + }, + "responses": { + "200": { + "body": { + "properties": { + "evaluationEndTime": "2022-03-04T05:10:00.000Z", + "quickAssessments": [ + { + "description": "Protect your storage accounts from potential threats using virtual network rules as a preferred method instead of IP-based filtering. Disabling IP-based filtering prevents public IPs from accessing your storage accounts.", + "displayName": "Storage accounts should restrict network access using virtual network rules", + "remediationLink": "Protect your storage accounts from potential threats using virtual network rules as a preferred method instead of IP-based filtering. Disabling IP-based filtering prevents public IPs from accessing your storage accounts.", + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.storage/storageaccounts/storettas3iw2megtcarm", + "resourceStatus": "Healthy", + "responsibilityId": "/providers/microsoft.authorization/policydefinitions/2a1a9cdf-e04d-429a-8416-3bfb72a1b26f", + "timestamp": "2022-03-04T05:00:00.000Z" + }, + { + "description": "", + "displayName": "Secure transfer to storage accounts should be enabled", + "remediationLink": "", + "resourceId": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.storage/storageaccounts/storettas3iw2megtcarm", + "resourceStatus": "Unhealthy", + "responsibilityId": "/providers/Microsoft.Authorization/policyDefinitions/404c3081-a854-4457-ae30-26a93ef643f9", + "timestamp": "2022-03-04T05:00:00.000Z" + } + ], + "resourceIds": [ + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.storage/storageaccounts/storettas3iw2megtcarm" + ], + "triggerTime": "2022-03-04T05:00:00.000Z" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}", + "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}" + } + } + } +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_CreateOrUpdate.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_CreateOrUpdate.json new file mode 100644 index 000000000000..379f63d3f3fd --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_CreateOrUpdate.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "properties": { + "contentType": "application/json", + "enableSslVerification": "true", + "events": [ + "generate_snapshot_failed" + ], + "payloadUrl": "https://example.com", + "sendAllEvents": "false", + "status": "Enabled", + "updateWebhookKey": "true", + "webhookKey": "00000000-0000-0000-0000-000000000000" + } + }, + "reportName": "testReportName", + "webhookName": "testWebhookName" + }, + "responses": { + "200": { + "body": { + "name": "testWebhookName", + "type": "Microsfot.AppComplianceAutomation/reports/webhooks", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/webhooks/testWebhookName", + "properties": { + "contentType": "application/json", + "deliveryStatus": "Succeeded", + "enableSslVerification": "true", + "events": [ + "generate_snapshot_failed" + ], + "payloadUrl": "https://example.com", + "provisioningState": "Succeeded", + "sendAllEvents": "false", + "status": "Enabled", + "tenantId": "00000000-0000-0000-0000-000000000000", + "webhookId": "00000000-0000-0000-0000-000000000000", + "webhookKeyEnabled": "true" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + }, + "201": { + "body": { + "name": "testWebhookName", + "type": "Microsfot.AppComplianceAutomation/reports/webhooks", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/webhooks/testWebhookName", + "properties": { + "contentType": "application/json", + "deliveryStatus": "Succeeded", + "enableSslVerification": "true", + "events": [ + "generate_snapshot_failed" + ], + "payloadUrl": "https://example.com", + "provisioningState": "Succeeded", + "sendAllEvents": "false", + "status": "Enabled", + "tenantId": "00000000-0000-0000-0000-000000000000", + "webhookId": "00000000-0000-0000-0000-000000000000", + "webhookKeyEnabled": "true" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Webhooks_CreateOrUpdate", + "title": "Webhook_CreateOrUpdate" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Delete.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Delete.json new file mode 100644 index 000000000000..fd17dfb9e1d3 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName", + "webhookName": "testWebhookName" + }, + "responses": { + "200": {}, + "204": {} + }, + "operationId": "Webhooks_Delete", + "title": "Webhook_Delete" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Get.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Get.json new file mode 100644 index 000000000000..ea6f0c6636c9 --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Get.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "reportName": "testReportName", + "webhookName": "testWebhookName" + }, + "responses": { + "200": { + "body": { + "name": "testWebhookName", + "type": "Microsfot.AppComplianceAutomation/reports/webhooks", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/webhooks/testWebhookName", + "properties": { + "contentType": "application/json", + "deliveryStatus": "Succeeded", + "enableSslVerification": "true", + "events": [ + "generate_snapshot_failed" + ], + "payloadUrl": "https://example.com", + "provisioningState": "Succeeded", + "sendAllEvents": "false", + "status": "Enabled", + "tenantId": "00000000-0000-0000-0000-000000000000", + "webhookId": "00000000-0000-0000-0000-000000000000", + "webhookKeyEnabled": "true" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Webhooks_Get", + "title": "Webhook_Get" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_List.json new file mode 100644 index 000000000000..74019ce2f47f --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_List.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "$skipToken": "1", + "$top": "100", + "api-version": "2024-06-27", + "reportName": "testReportName" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/reports/testReportName/webhooks?api-version=2024-06-27&skipToken=1&top=100", + "value": [ + { + "name": "testWebhookName", + "type": "Microsfot.AppComplianceAutomation/reports/webhooks", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/snapshots/testWebhookName", + "properties": { + "contentType": "application/json", + "deliveryStatus": "Succeeded", + "enableSslVerification": "true", + "events": [ + "generate_snapshot_failed" + ], + "payloadUrl": "https://example.com", + "provisioningState": "Succeeded", + "sendAllEvents": "false", + "status": "Enabled", + "tenantId": "00000000-0000-0000-0000-000000000000", + "webhookId": "00000000-0000-0000-0000-000000000000", + "webhookKeyEnabled": "false" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "Webhooks_List", + "title": "Webhooks_List" +} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Update.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Update.json new file mode 100644 index 000000000000..4fe5b96af53e --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Update.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2024-06-27", + "parameters": { + "properties": { + "contentType": "application/json", + "enableSslVerification": "true", + "events": [ + "generate_snapshot_failed" + ], + "payloadUrl": "https://example.com", + "sendAllEvents": "false", + "status": "Enabled", + "updateWebhookKey": "true", + "webhookKey": "00000000-0000-0000-0000-000000000000" + } + }, + "reportName": "testReportName", + "webhookName": "testWebhookName" + }, + "responses": { + "200": { + "body": { + "name": "testWebhookName", + "type": "Microsfot.AppComplianceAutomation/reports/webhooks", + "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/testWebhookName", + "properties": { + "contentType": "application/json", + "deliveryStatus": "Succeeded", + "enableSslVerification": "true", + "events": [ + "generate_snapshot_failed" + ], + "payloadUrl": "https://example.com", + "provisioningState": "Succeeded", + "sendAllEvents": "false", + "status": "Enabled", + "tenantId": "00000000-0000-0000-0000-000000000000", + "webhookId": "00000000-0000-0000-0000-000000000000", + "webhookKeyEnabled": "true" + }, + "systemData": { + "createdAt": "2021-05-14T22:34:55.4499903Z", + "createdBy": "00000000-0000-0000-0000-000000000000", + "createdByType": "User", + "lastModifiedAt": "2021-05-14T22:34:55.4499903Z", + "lastModifiedBy": "00000000-0000-0000-0000-000000000000", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Webhooks_Update", + "title": "Webhook_Update" +} From 006e937668acd0c7b0934f76a8aea1fd81ef9780 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Mon, 6 May 2024 11:24:14 +0800 Subject: [PATCH 05/33] remove the useless example file --- .../models/models.tsp | 8 +- .../2024-06-27/appcomplianceautomation.json | 8 +- ..._ComplianceDetailedPdfReport_Download.json | 27 ---- ...Snapshot_CompliancePdfReport_Download.json | 27 ---- .../Snapshot_ComplianceReport_Download.json | 41 ------- .../2024-06-27/examples/Snapshot_Get.json | 116 ------------------ .../Snapshot_ResourceList_Download.json | 32 ----- 7 files changed, 11 insertions(+), 248 deletions(-) delete mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceDetailedPdfReport_Download.json delete mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_CompliancePdfReport_Download.json delete mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceReport_Download.json delete mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json delete mode 100644 specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ResourceList_Download.json diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp index 99e3c07316e4..3c7a94b3e5dd 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp @@ -1648,7 +1648,7 @@ model ScopingQuestion { * Question id. */ @visibility("read") - questionId?: string; + questionId: string; /** * Superior question id. @@ -1660,19 +1660,19 @@ model ScopingQuestion { * Input type of the question answer. */ @visibility("read") - inputType?: InputType; + inputType: InputType; /** * Option id list. */ @visibility("read") - optionIds?: string[]; + optionIds: string[]; /** * The rule of the question. */ @visibility("read") - rules?: Rule[]; + rules: Rule[]; /** * The answer value to show the sub questions. diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index e5f92d4a4880..75525bb316bd 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -4061,7 +4061,13 @@ "description": "The answer value to show the sub questions.", "readOnly": true } - } + }, + "required": [ + "questionId", + "inputType", + "optionIds", + "rules" + ] }, "ScopingQuestions": { "type": "object", diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceDetailedPdfReport_Download.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceDetailedPdfReport_Download.json deleted file mode 100644 index a22cf29df01d..000000000000 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceDetailedPdfReport_Download.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "parameters": { - "api-version": "2024-06-27", - "reportName": "testReportName", - "snapshotName": "testSnapshotName", - "parameters": { - "downloadType": "ComplianceDetailedPdfReport", - "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000", - "offerGuid": "00000000-0000-0000-0000-000000000000" - } - }, - "responses": { - "200": { - "body": { - "complianceDetailedPdfReport": { - "sasUri": "this is a uri" - } - } - }, - "202": { - "headers": { - "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", - "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" - } - } - } -} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_CompliancePdfReport_Download.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_CompliancePdfReport_Download.json deleted file mode 100644 index 56146e79ee2a..000000000000 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_CompliancePdfReport_Download.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "parameters": { - "api-version": "2024-06-27", - "reportName": "testReportName", - "snapshotName": "testSnapshotName", - "parameters": { - "downloadType": "CompliancePdfReport", - "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000", - "offerGuid": "00000000-0000-0000-0000-000000000000" - } - }, - "responses": { - "200": { - "body": { - "compliancePdfReport": { - "sasUri": "this is uri of report" - } - } - }, - "202": { - "headers": { - "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", - "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" - } - } - } -} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceReport_Download.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceReport_Download.json deleted file mode 100644 index b92d8c2321de..000000000000 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ComplianceReport_Download.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "parameters": { - "api-version": "2024-06-27", - "reportName": "testReportName", - "snapshotName": "testSnapshotName", - "parameters": { - "downloadType": "ComplianceReport", - "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000", - "offerGuid": "00000000-0000-0000-0000-000000000000" - } - }, - "responses": { - "200": { - "body": { - "complianceReport": [ - { - "categoryName": "Data Security & Privacy", - "controlId": "1", - "controlName": "Validate that TLS Configuration meets or exceeds the TLS Profile Configuration Requirements", - "controlType": "FullyAutomated", - "complianceState": "Healthy", - "policyId": "00000000-0000-0000-0000-000000000000", - "policyDisplayName": "policy name", - "policyDescription": "policy description", - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroup": "testGroup", - "resourceType": "storageaccounts", - "resourceId": "testResourceId", - "statusChangeDate": "2021-09-01T17:26:57.4971616Z" - } - ] - } - }, - "202": { - "headers": { - "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", - "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" - } - } - } -} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json deleted file mode 100644 index 01ac451638f9..000000000000 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json +++ /dev/null @@ -1,116 +0,0 @@ -{ - "parameters": { - "api-version": "2024-06-27", - "reportName": "testReportName", - "snapshotName": "testSnapshot" - }, - "responses": { - "200": { - "body": { - "id": "/provider/Microsfot.AppComplianceAutomation/reports/testReportName/snapshots/testSnapshot", - "name": "testSnapshot", - "type": "Microsfot.AppComplianceAutomation/reports/snapshots", - "properties": { - "id": "00000000-0000-0000-0000-000000000000", - "snapshotName": "testSnapshot", - "createdAt": "2022-03-04T15:33:59.160Z", - "provisioningState": "Succeeded", - "reportProperties": { - "id": "00000000-0000-0000-0000-000000000000", - "status": "Active", - "tenantId": "00000000-0000-0000-0000-000000000000", - "reportName": "testReportName", - "offerGuid": "00000000-0000-0000-0000-000000000000", - "timeZone": "GMT Standard Time", - "triggerTime": "2022-03-04T15:33:59.160Z", - "nextTriggerTime": "2022-03-04T15:33:59.160Z", - "lastTriggerTime": "2022-03-04T15:33:59.160Z", - "subscriptions": [ - "00000000-0000-0000-0000-000000000000" - ], - "resources": [ - { - "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", - "tags": { - "key1": "value1" - } - } - ], - "complianceStatus": { - "m365": { - "passedCount": 0, - "failedCount": 0, - "manualCount": 0 - } - }, - "provisioningState": "Succeeded" - }, - "reportSystemData": { - "createdBy": "00000000-0000-0000-0000-000000000000", - "createdByType": "User", - "createdAt": "2021-05-14T22:34:55.4499903Z", - "lastModifiedBy": "00000000-0000-0000-0000-000000000000", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" - }, - "complianceResults": [ - { - "complianceName": "M365", - "categories": [ - { - "categoryName": "Operational Security", - "categoryType": "PartiallyAutomated", - "categoryStatus": "Healthy", - "controlFamilies": [ - { - "familyName": "Incident Response", - "familyType": "PartiallyAutomated", - "familyStatus": "Healthy", - "controls": [ - { - "controlId": "Operational Security#75", - "controlShortName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", - "controlFullName": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", - "controlType": "Manual", - "controlDescriptionHyperLink": "https://doc.microsoft.com", - "controlStatus": "Passed", - "controlDescription": "Provide demonstrable evidence that all member of the incident response team have completed annual training or a table top exercise", - "assessments": [ - { - "name": "AssessmentName", - "severity": "High", - "description": "Assessment Description", - "remediation": "Remediation", - "isPass": "True", - "policyId": "00000000-0000-0000-0000-000000000000", - "resourceList": [ - { - "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/Microsoft.SignalRService/SignalR/mySignalRService", - "resourceStatus": "Healthy", - "reason": "N/A", - "statusChangeDate": "2022-03-04" - } - ] - } - ] - } - ] - } - ] - } - ] - } - ] - }, - "systemData": { - "createdBy": "00000000-0000-0000-0000-000000000000", - "createdByType": "User", - "createdAt": "2021-05-14T22:34:55.4499903Z", - "lastModifiedBy": "00000000-0000-0000-0000-000000000000", - "lastModifiedByType": "User", - "lastModifiedAt": "2021-05-14T22:34:55.4499903Z" - } - } - } - } -} diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ResourceList_Download.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ResourceList_Download.json deleted file mode 100644 index 02f32229d8f8..000000000000 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_ResourceList_Download.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parameters": { - "api-version": "2024-06-27", - "reportName": "testReportName", - "snapshotName": "testSnapshotName", - "parameters": { - "downloadType": "ResourceList", - "reportCreatorTenantId": "00000000-0000-0000-0000-000000000000", - "offerGuid": "00000000-0000-0000-0000-000000000000" - } - }, - "responses": { - "200": { - "body": { - "resourceList": [ - { - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroup": "myResourceGroup", - "resourceType": "SignalR", - "resourceId": "mySignalRService" - } - ] - } - }, - "202": { - "headers": { - "Location": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationResults/{operationId}", - "Azure-AsyncOperation": "https://management.azure.com/providers/Microsoft.AppComplianceAutomation/operationStatuses/{operationId}" - } - } - } -} From 679295b50238b318960a75d2f95212db650b3c5a Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Mon, 6 May 2024 12:08:36 +0800 Subject: [PATCH 06/33] fix spell check --- .../AppComplianceAutomation.Management/models/models.tsp | 3 --- .../stable/2024-06-27/appcomplianceautomation.json | 6 ------ 2 files changed, 9 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp index 3c7a94b3e5dd..5e474f8d2e80 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp @@ -420,9 +420,6 @@ union Rule { @doc("The question answer should be a PublicSOX.") PublicSOX: "PublicSOX", - @doc("The question answer should be a FismaFedramp.") - FismaFedramp: "FismaFedramp", - @doc("The question answer should be a CreditCardPCI.") CreditCardPCI: "CreditCardPCI", diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index 75525bb316bd..d3b59001fce2 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -3846,7 +3846,6 @@ "Domains", "USPrivacyShield", "PublicSOX", - "FismaFedramp", "CreditCardPCI", "AzureApplication", "ValidGuid", @@ -3894,11 +3893,6 @@ "value": "PublicSOX", "description": "The question answer should be a PublicSOX." }, - { - "name": "FismaFedramp", - "value": "FismaFedramp", - "description": "The question answer should be a FismaFedramp." - }, { "name": "CreditCardPCI", "value": "CreditCardPCI", From fd3974dde285c2a6fce7a4b5b5e297e211f239c9 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Tue, 7 May 2024 11:24:57 +0800 Subject: [PATCH 07/33] remove query in get evidence api --- .../resources/EvidenceResource.tsp | 14 -------------- .../2024-06-27/appcomplianceautomation.json | 16 ---------------- 2 files changed, 30 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp index 357350acbd54..15a3c9f88f20 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp @@ -50,20 +50,6 @@ interface EvidenceResources { EvidenceResource, { ...BaseParameters; - - /** - * The offerGuid which mapping to the reports. - */ - @minLength(1) - @query("offerGuid") - offerGuid?: string; - - /** - * The tenant id of the report creator. - */ - @minLength(1) - @query("reportCreatorTenantId") - reportCreatorTenantId?: string; } >; diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index d3b59001fce2..c007b4f2023a 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -736,22 +736,6 @@ { "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, - { - "name": "offerGuid", - "in": "query", - "description": "The offerGuid which mapping to the reports.", - "required": false, - "type": "string", - "minLength": 1 - }, - { - "name": "reportCreatorTenantId", - "in": "query", - "description": "The tenant id of the report creator.", - "required": false, - "type": "string", - "minLength": 1 - }, { "name": "reportName", "in": "path", From f38e43709c9d9e6695e7b662cc492f9452e0f389 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Wed, 15 May 2024 11:02:35 +0800 Subject: [PATCH 08/33] remove the singleton annotation --- .../ScopingConfigurationResource.tsp | 3 +- .../2024-06-27/appcomplianceautomation.json | 28 +++++++++++++++++-- 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp index d4e69a337fbb..9ac2e5e87644 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp @@ -17,7 +17,6 @@ namespace Microsoft.AppComplianceAutomation; */ #suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "For backward compatibility" #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "For backward compatibility" -@singleton("default") @parentResource(ReportResource) @includeInapplicableMetadataInPayload(false) @Azure.ResourceManager.Private.armResourceInternal( @@ -73,5 +72,5 @@ interface ScopingConfigurationResources { } @@doc(ScopingConfigurationResources.createOrUpdate::parameters.parameters, - "Parameters for the create or update operation" + "Parameters for the create or update operation, this is a singleton resource, so please make sure you're using default as the name." ); diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index c007b4f2023a..51dc84834e00 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -1092,7 +1092,7 @@ } } }, - "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/scopingConfigurations/default": { + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/scopingConfigurations/{scopingConfiguration}": { "get": { "operationId": "ScopingConfiguration_Get", "tags": [ @@ -1110,6 +1110,14 @@ "required": true, "type": "string", "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "scopingConfiguration", + "in": "path", + "description": "The scoping configuration of the specific report.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_]*$" } ], "responses": { @@ -1150,10 +1158,18 @@ "type": "string", "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, + { + "name": "scopingConfiguration", + "in": "path", + "description": "The scoping configuration of the specific report.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_]*$" + }, { "name": "parameters", "in": "body", - "description": "Parameters for the create or update operation", + "description": "Parameters for the create or update operation, this is a singleton resource, so please make sure you're using default as the name.", "required": true, "schema": { "$ref": "#/definitions/ScopingConfigurationResource" @@ -1203,6 +1219,14 @@ "required": true, "type": "string", "pattern": "^[-a-zA-Z0-9_]{1,50}$" + }, + { + "name": "scopingConfiguration", + "in": "path", + "description": "The scoping configuration of the specific report.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_]*$" } ], "responses": { From 43620c5bb0a6575efc5c8826a915234e7777a96c Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Fri, 17 May 2024 10:58:43 +0800 Subject: [PATCH 09/33] fix compile error --- .../main.tsp | 1 - .../operations.tsp | 15 ++++++------ .../resources/EvidenceResource.tsp | 10 ++++---- .../resources/ReportResource.tsp | 24 +++++++++---------- .../ScopingConfigurationResource.tsp | 4 +--- .../resources/SnapshotResource.tsp | 7 +++--- .../resources/WebhookResource.tsp | 8 +++---- .../routes.tsp | 16 +++++-------- 8 files changed, 35 insertions(+), 50 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp index af91de8e1bc6..38f0a26de3cc 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp @@ -12,7 +12,6 @@ import "./routes.tsp"; using TypeSpec.Rest; using TypeSpec.Http; -using Azure.ResourceManager.Foundations; using Azure.Core; using Azure.ResourceManager; using TypeSpec.Versioning; diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp index b5b096a45d41..ffd8a164a54c 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp @@ -5,7 +5,6 @@ import "@typespec/rest"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using OpenAPI; using Azure.Core; @@ -29,7 +28,7 @@ interface AcatOperations { ErrorResponse extends {} >( ...HttpParameters, - @doc("Resource create parameters.") @body parameters: BodyParameter, + parameters: BodyParameter, ): Response | ErrorResponse; /** @@ -53,8 +52,8 @@ interface AcatOperations { @armResourceCreateOrUpdate(Resource) @put AcatResourceCreateOrUpdateAsync< - Resource extends ArmResource, - BaseParameters = DefaultBaseParameters, + Resource extends Azure.ResourceManager.Foundations.Resource, + BaseParameters = Azure.ResourceManager.Foundations.DefaultBaseParameters, LroHeaders extends TypeSpec.Reflection.Model = Azure.Core.Foundations.RetryAfterHeader, Parameters extends {} = {}, Response extends {} = ArmResourceUpdatedResponse | ArmResourceCreatedResponse< @@ -82,8 +81,8 @@ interface AcatOperations { * @template Error Optional. The error response, if non-standard. */ AcatResourceCreateOrReplaceAsync< - Resource extends ArmResource, - BaseParameters = DefaultBaseParameters, + Resource extends Azure.ResourceManager.Foundations.Resource, + BaseParameters = Azure.ResourceManager.Foundations.BaseParameters, LroHeaders extends TypeSpec.Reflection.Model = Azure.Core.Foundations.RetryAfterHeader, Parameters extends {} = {}, Response extends {} = ArmResourceUpdatedResponse | ArmResourceCreatedResponse< @@ -113,8 +112,8 @@ interface AcatOperations { @armResourceCreateOrUpdate(Resource) @put AcatResourceCreateOrReplaceSync< - Resource extends ArmResource, - BaseParameters = DefaultBaseParameters, + Resource extends Azure.ResourceManager.Foundations.Resource, + BaseParameters = Azure.ResourceManager.Foundations.DefaultBaseParameters, Parameters extends {} = {}, Response extends {} = ArmResourceUpdatedResponse | ArmResourceCreatedSyncResponse, Error extends {} = ErrorResponse diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp index 15a3c9f88f20..19cf1edee2a7 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp @@ -6,7 +6,6 @@ import "./ReportResource.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using OpenAPI; @@ -19,11 +18,10 @@ namespace Microsoft.AppComplianceAutomation; @parentResource(ReportResource) @includeInapplicableMetadataInPayload(false) @Azure.ResourceManager.Private.armResourceInternal(EvidenceProperties) -model EvidenceResource extends ProxyResourceBase { +model EvidenceResource extends Azure.ResourceManager.Foundations.ProxyResource { /** * The evidence name. */ - @path @key("evidenceName") @segment("evidences") @visibility("read") @@ -49,7 +47,7 @@ interface EvidenceResources { get is ArmResourceRead< EvidenceResource, { - ...BaseParameters; + ...Azure.ResourceManager.Foundations.BaseParameters; } >; @@ -61,7 +59,7 @@ interface EvidenceResources { createOrUpdate is AcatOperations.AcatResourceCreateOrReplaceSync< EvidenceResource, { - ...BaseParameters; + ...Azure.ResourceManager.Foundations.BaseParameters; ...ExtraParameter; } >; @@ -81,7 +79,7 @@ interface EvidenceResources { listByReport is ArmResourceListByParent< EvidenceResource, { - ...BaseParameters; + ...Azure.ResourceManager.Foundations.BaseParameters; ...QueryParameters; } >; diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp index bb652e338dd0..d77cfaf8ea83 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp @@ -7,7 +7,6 @@ import "../operations.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using OpenAPI; using Azure.Core; @@ -21,12 +20,11 @@ namespace Microsoft.AppComplianceAutomation; @tenantResource @includeInapplicableMetadataInPayload(false) @Azure.ResourceManager.Private.armResourceInternal(ReportProperties) -model ReportResource extends ProxyResourceBase { +model ReportResource extends Azure.ResourceManager.Foundations.ProxyResource { /** * Report Name. */ @pattern("^[-a-zA-Z0-9_]{1,50}$") - @path @key("reportName") @segment("reports") @visibility("read") @@ -57,7 +55,7 @@ interface ReportResources { @operationId("Reports_CreateOrUpdate") createOrUpdate is AcatOperations.AcatResourceCreateOrReplaceAsync< ReportResource, - BaseParameters + Azure.ResourceManager.Foundations.BaseParameters >; /** @@ -69,7 +67,7 @@ interface ReportResources { update is ArmCustomPatchAsync< ReportResource, ReportResourcePatch, - BaseParameters + Azure.ResourceManager.Foundations.BaseParameters >; /** @@ -79,7 +77,7 @@ interface ReportResources { @operationId("Reports_Delete") delete is ArmResourceDeleteWithoutOkAsync< ReportResource, - BaseParameters + Azure.ResourceManager.Foundations.BaseParameters >; /** @@ -90,7 +88,7 @@ interface ReportResources { list is ArmResourceListByParent< ReportResource, { - ...BaseParameters; + ...Azure.ResourceManager.Foundations.BaseParameters; ...QueryParameters; } >; @@ -104,7 +102,7 @@ interface ReportResources { ReportResource, SyncCertRecordRequest, SyncCertRecordResponse, - BaseParameters + Azure.ResourceManager.Foundations.BaseParameters >; /** @@ -114,8 +112,8 @@ interface ReportResources { @operationId("Reports_NestedResourceCheckNameAvailability") checkNameAvailability is ArmResourceActionSync< ReportResource, - CheckNameAvailabilityRequest, - CheckNameAvailabilityResponse + Azure.ResourceManager.Foundations.CheckNameAvailabilityRequest, + Azure.ResourceManager.Foundations.CheckNameAvailabilityResponse >; /** @@ -127,7 +125,7 @@ interface ReportResources { ReportResource, void, ReportFixResult, - BaseParameters + Azure.ResourceManager.Foundations.BaseParameters >; /** @@ -139,7 +137,7 @@ interface ReportResources { ReportResource, void, ScopingQuestions, - BaseParameters + Azure.ResourceManager.Foundations.BaseParameters >; /** @@ -151,7 +149,7 @@ interface ReportResources { ReportResource, void, ReportVerificationResult, - BaseParameters + Azure.ResourceManager.Foundations.BaseParameters >; } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp index 9ac2e5e87644..44e0987a00c3 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp @@ -7,7 +7,6 @@ import "./ReportResource.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using OpenAPI; @@ -22,11 +21,10 @@ namespace Microsoft.AppComplianceAutomation; @Azure.ResourceManager.Private.armResourceInternal( ScopingConfigurationProperties ) -model ScopingConfigurationResource extends ProxyResourceBase { +model ScopingConfigurationResource extends Azure.ResourceManager.Foundations.ProxyResource { @key("scopingConfiguration") @segment("scopingConfigurations") @visibility("read") - @path @doc("The scoping configuration of the specific report.") @pattern("^[a-zA-Z0-9_]*$") name: string; diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp index 40e1cc49337c..4804845045ad 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp @@ -7,7 +7,6 @@ import "./ReportResource.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using OpenAPI; @@ -20,7 +19,7 @@ namespace Microsoft.AppComplianceAutomation; @parentResource(ReportResource) @includeInapplicableMetadataInPayload(false) @Azure.ResourceManager.Private.armResourceInternal(SnapshotProperties) -model SnapshotResource extends ProxyResourceBase { +model SnapshotResource extends Azure.ResourceManager.Foundations.ProxyResource { /** * Snapshot Name. */ @@ -57,7 +56,7 @@ interface SnapshotResources { list is ArmResourceListByParent< SnapshotResource, { - ...BaseParameters; + ...Azure.ResourceManager.Foundations.BaseParameters; ...QueryParameters; } >; @@ -71,7 +70,7 @@ interface SnapshotResources { SnapshotResource, SnapshotDownloadRequest, DownloadResponse, - BaseParameters + Azure.ResourceManager.Foundations.BaseParameters >; } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp index bc5c58df536b..da86920dfe97 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp @@ -7,7 +7,6 @@ import "./ReportResource.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; using OpenAPI; @@ -20,12 +19,11 @@ namespace Microsoft.AppComplianceAutomation; @parentResource(ReportResource) @includeInapplicableMetadataInPayload(false) @Azure.ResourceManager.Private.armResourceInternal(WebhookProperties) -model WebhookResource extends ProxyResourceBase { +model WebhookResource extends Azure.ResourceManager.Foundations.ProxyResource { /** * Webhook Name. */ @pattern("^[-a-zA-Z0-9_]{1,50}$") - @path @key("webhookName") @segment("webhooks") @visibility("read") @@ -62,7 +60,7 @@ interface WebhookResources { #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" @parameterVisibility("read") @operationId("Webhooks_Update") - update is ArmCustomPatchSync; + update is Azure.ResourceManager.Foundations.ArmUpdateOperation, ErrorResponse>; /** * Delete an AppComplianceAutomation webhook. @@ -79,7 +77,7 @@ interface WebhookResources { list is ArmResourceListByParent< WebhookResource, { - ...BaseParameters; + ...Azure.ResourceManager.Foundations.BaseParameters; ...QueryParameters; } >; diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp index c9755d09136b..f5e9912fb6f4 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp @@ -5,9 +5,8 @@ import "@typespec/openapi"; import "./models/models.tsp"; using TypeSpec.Rest; -using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; using TypeSpec.Http; +using Azure.ResourceManager; using OpenAPI; using Azure.Core; using Azure.Core.Traits; @@ -16,10 +15,7 @@ namespace Microsoft.AppComplianceAutomation; interface Operations extends Azure.ResourceManager.Operations {} -alias PlaceholderResource = { - id: string; - type: string; -}; +alias PlaceholderResource = Azure.ResourceManager.Foundations.ProxyResource; alias ArmProviderActionAsync< Request extends {} | void, @@ -27,7 +23,7 @@ alias ArmProviderActionAsync< Parameters extends {} = {}, LroHeaders extends TypeSpec.Reflection.Model = ArmLroLocationHeader & Azure.Core.Foundations.RetryAfterHeader -> = ArmResourceActionAsync< +> = Azure.ResourceManager.ArmResourceActionAsync< PlaceholderResource, Request, Response | ArmAcceptedLroResponse<"Accepted", LroHeaders>, @@ -40,7 +36,7 @@ alias ArmProviderActionSync< Request extends {} | void, Response extends {} | void, Parameters extends {} = {} -> = ArmResourceActionSync< +> = Azure.ResourceManager.ArmResourceActionSync< PlaceholderResource, Request, Response, @@ -53,8 +49,8 @@ alias ArmProviderActionSync< interface ProviderActions { @doc("Check if the given name is available for a report.") checkNameAvailability is ArmProviderActionSync< - CheckNameAvailabilityRequest, - CheckNameAvailabilityResponse + Azure.ResourceManager.Foundations.CheckNameAvailabilityRequest, + Azure.ResourceManager.Foundations.CheckNameAvailabilityResponse >; @doc("Get the count of reports.") From 3b37384b46072224a04ff54bf91b00764a58e439 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Fri, 17 May 2024 23:50:05 +0800 Subject: [PATCH 10/33] fix compile error of v56 --- .../resources/EvidenceResource.tsp | 7 ------- .../resources/ReportResource.tsp | 7 ------- .../resources/ScopingConfigurationResource.tsp | 7 ------- .../resources/SnapshotResource.tsp | 7 ------- .../resources/WebhookResource.tsp | 7 ------- 5 files changed, 35 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp index 19cf1edee2a7..fd1120b42bf3 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp @@ -27,13 +27,6 @@ model EvidenceResource extends Azure.ResourceManager.Foundations.ProxyResource { @visibility("read") @pattern("^[a-zA-Z0-9-_.]+$") name: string; - - /** - * Evidence property. - */ - @extension("x-ms-client-flatten", true) - @extension("x-ms-client-name", "properties") - properties: EvidenceProperties; } @armResourceOperations diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp index d77cfaf8ea83..bfcd5dc471fa 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp @@ -29,13 +29,6 @@ model ReportResource extends Azure.ResourceManager.Foundations.ProxyResource { @segment("reports") @visibility("read") name: string; - - /** - * Report property. - */ - @extension("x-ms-client-flatten", true) - @extension("x-ms-client-name", "properties") - properties: ReportProperties; } @armResourceOperations diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp index 44e0987a00c3..556f2ac79cbf 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp @@ -28,13 +28,6 @@ model ScopingConfigurationResource extends Azure.ResourceManager.Foundations.Pro @doc("The scoping configuration of the specific report.") @pattern("^[a-zA-Z0-9_]*$") name: string; - - /** - * ScopingConfiguration property. - */ - @extension("x-ms-client-flatten", true) - @extension("x-ms-client-name", "properties") - properties: ScopingConfigurationProperties; } @armResourceOperations diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp index 4804845045ad..4241fac266d9 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp @@ -29,13 +29,6 @@ model SnapshotResource extends Azure.ResourceManager.Foundations.ProxyResource { @visibility("read") @pattern("^[a-zA-Z0-9-]{1,64}$") name: string; - - /** - * Snapshot's property'. - */ - @extension("x-ms-client-flatten", true) - @extension("x-ms-client-name", "properties") - properties?: SnapshotProperties; } @armResourceOperations diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp index da86920dfe97..72940b2efa85 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp @@ -28,13 +28,6 @@ model WebhookResource extends Azure.ResourceManager.Foundations.ProxyResource { @segment("webhooks") @visibility("read") name: string; - - /** - * Webhook property. - */ - @extension("x-ms-client-flatten", true) - @extension("x-ms-client-name", "properties") - properties: WebhookProperties; } @armResourceOperations From 30fe501f889ba8820c34ab5d81837eab22ed73f5 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Mon, 20 May 2024 14:52:32 +0800 Subject: [PATCH 11/33] fix compile error --- .../operations.tsp | 4 +++ .../resources/EvidenceResource.tsp | 10 +++++- .../resources/ReportResource.tsp | 17 ++++++---- .../ScopingConfigurationResource.tsp | 19 +++++++++-- .../resources/SnapshotResource.tsp | 7 ++++ .../resources/WebhookResource.tsp | 34 +++++++++++++++++-- 6 files changed, 79 insertions(+), 12 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp index ffd8a164a54c..9cbdb596d9d6 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp @@ -20,6 +20,9 @@ interface AcatOperations { * @param Response The response or union of responses for success. * @param ErrorResponse The error response. */ +/** + * Base template for Acat report PUT Operations. + */ @doc("Base template for Acat report PUT Operations.") AcatCreateOperation< HttpParameters extends {}, @@ -28,6 +31,7 @@ interface AcatOperations { ErrorResponse extends {} >( ...HttpParameters, + /** The body parameters for the operation. */ parameters: BodyParameter, ): Response | ErrorResponse; diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp index fd1120b42bf3..1b6fc8979959 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp @@ -26,7 +26,15 @@ model EvidenceResource extends Azure.ResourceManager.Foundations.ProxyResource { @segment("evidences") @visibility("read") @pattern("^[a-zA-Z0-9-_.]+$") + @path name: string; + + /** + * Evidence property. + */ + @extension("x-ms-client-flatten", true) + @extension("x-ms-client-name", "properties") + properties: EvidenceProperties; } @armResourceOperations @@ -58,7 +66,7 @@ interface EvidenceResources { >; /** - * Delete an existent evidence from a specified report + * Delete an AppComplianceAutomation evidence. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" @operationId("Evidences_Delete") diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp index bfcd5dc471fa..7a57a0608d4a 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp @@ -28,7 +28,15 @@ model ReportResource extends Azure.ResourceManager.Foundations.ProxyResource { @key("reportName") @segment("reports") @visibility("read") + @path name: string; + + /** + * Report property. + */ + @extension("x-ms-client-flatten", true) + @extension("x-ms-client-name", "properties") + properties: ReportProperties; } @armResourceOperations @@ -55,7 +63,7 @@ interface ReportResources { * Update an exiting AppComplianceAutomation report. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @parameterVisibility("read") + @parameterVisibility @operationId("Reports_Update") update is ArmCustomPatchAsync< ReportResource, @@ -146,6 +154,7 @@ interface ReportResources { >; } + @@doc(ReportResources.createOrUpdate::parameters.parameters, "Parameters for the create or update operation" ); @@ -157,8 +166,4 @@ interface ReportResources { ); @@doc(ReportResources.checkNameAvailability::parameters.body, "NameAvailabilityRequest object." -); -@@encodedName(ReportResources.update::parameters.properties, - "application/json", - "parameters" -); +); \ No newline at end of file diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp index 556f2ac79cbf..ba4ebf710978 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp @@ -1,13 +1,19 @@ import "@azure-tools/typespec-azure-core"; import "@azure-tools/typespec-azure-resource-manager"; +import "@azure-tools/typespec-client-generator-core"; import "@typespec/openapi"; import "@typespec/rest"; +import "@typespec/http"; +import "@typespec/versioning"; import "../models/models.tsp"; import "./ReportResource.tsp"; +using TypeSpec.Http; using TypeSpec.Rest; +using TypeSpec.Versioning; +using Azure.Core; using Azure.ResourceManager; -using TypeSpec.Http; +using Azure.ClientGenerator.Core; using OpenAPI; namespace Microsoft.AppComplianceAutomation; @@ -27,7 +33,15 @@ model ScopingConfigurationResource extends Azure.ResourceManager.Foundations.Pro @visibility("read") @doc("The scoping configuration of the specific report.") @pattern("^[a-zA-Z0-9_]*$") + @path name: string; + + /** + * ScopingConfiguration property. + */ + @extension("x-ms-client-flatten", true) + @extension("x-ms-client-name", "properties") + properties: ScopingConfigurationProperties; } @armResourceOperations @@ -63,5 +77,6 @@ interface ScopingConfigurationResources { } @@doc(ScopingConfigurationResources.createOrUpdate::parameters.parameters, - "Parameters for the create or update operation, this is a singleton resource, so please make sure you're using default as the name." + "Parameters for the create or update operation" ); + diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp index 4241fac266d9..bb25e11a649b 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp @@ -29,6 +29,13 @@ model SnapshotResource extends Azure.ResourceManager.Foundations.ProxyResource { @visibility("read") @pattern("^[a-zA-Z0-9-]{1,64}$") name: string; + + /** + * Snapshot's property. + */ + @extension("x-ms-client-flatten", true) + @extension("x-ms-client-name", "properties") + properties: SnapshotProperties; } @armResourceOperations diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp index 72940b2efa85..fc5c43c503fe 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp @@ -1,13 +1,19 @@ import "@azure-tools/typespec-azure-core"; import "@azure-tools/typespec-azure-resource-manager"; +import "@azure-tools/typespec-client-generator-core"; import "@typespec/openapi"; import "@typespec/rest"; +import "@typespec/http"; +import "@typespec/versioning"; import "../models/models.tsp"; import "./ReportResource.tsp"; +using TypeSpec.Http; using TypeSpec.Rest; +using TypeSpec.Versioning; +using Azure.Core; using Azure.ResourceManager; -using TypeSpec.Http; +using Azure.ClientGenerator.Core; using OpenAPI; namespace Microsoft.AppComplianceAutomation; @@ -27,7 +33,18 @@ model WebhookResource extends Azure.ResourceManager.Foundations.ProxyResource { @key("webhookName") @segment("webhooks") @visibility("read") + @path name: string; + + + + /** + * Properties of the webhook. + */ + @extension("x-ms-client-flatten", true) + @extension("x-ms-client-name", "properties") + properties: WebhookProperties; // Replace 'WebhookProperties' with the actual type + } @armResourceOperations @@ -51,9 +68,13 @@ interface WebhookResources { * Update an exiting AppComplianceAutomation webhook. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @parameterVisibility("read") + @parameterVisibility @operationId("Webhooks_Update") - update is Azure.ResourceManager.Foundations.ArmUpdateOperation, ErrorResponse>; + update is ArmCustomPatchSync< + WebhookResource, + WebhookResourcePatch, + Response = ArmResponse, + Error = ErrorResponse>; /** * Delete an AppComplianceAutomation webhook. @@ -87,3 +108,10 @@ interface WebhookResources { "application/json", "parameters" ); + + +@@clientName(WebhookResources.createOrUpdate::parameters.parameters, "properties"); +@@encodedName(WebhookResources.createOrUpdate::parameters.parameters, + "application/json", + "properties" +); \ No newline at end of file From b36776f998677164426a309047de310d66dd97e4 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Tue, 21 May 2024 19:11:23 +0800 Subject: [PATCH 12/33] fix all compile error and make the swagger align with before --- .../operations.tsp | 2 +- .../resources/EvidenceResource.tsp | 2 +- .../resources/ReportResource.tsp | 15 ++++++++++++- .../ScopingConfigurationResource.tsp | 2 +- .../resources/SnapshotResource.tsp | 2 +- .../resources/WebhookResource.tsp | 9 +------- .../2024-06-27/appcomplianceautomation.json | 22 ++----------------- 7 files changed, 21 insertions(+), 33 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp index 9cbdb596d9d6..7e31129eeace 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp @@ -32,7 +32,7 @@ interface AcatOperations { >( ...HttpParameters, /** The body parameters for the operation. */ - parameters: BodyParameter, + @doc("Resource create parameters.") @bodyRoot parameters: BodyParameter, ): Response | ErrorResponse; /** diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp index 1b6fc8979959..e809352974c9 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp @@ -66,7 +66,7 @@ interface EvidenceResources { >; /** - * Delete an AppComplianceAutomation evidence. + * Delete an existent evidence from a specified report */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" @operationId("Evidences_Delete") diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp index 7a57a0608d4a..4a308142c96e 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp @@ -1,10 +1,13 @@ import "@azure-tools/typespec-azure-core"; import "@azure-tools/typespec-azure-resource-manager"; +import "@azure-tools/typespec-client-generator-core"; import "@typespec/openapi"; import "@typespec/rest"; import "../models/models.tsp"; import "../operations.tsp"; + +using Azure.ClientGenerator.Core; using TypeSpec.Rest; using Azure.ResourceManager; using TypeSpec.Http; @@ -166,4 +169,14 @@ interface ReportResources { ); @@doc(ReportResources.checkNameAvailability::parameters.body, "NameAvailabilityRequest object." -); \ No newline at end of file +); + +@@encodedName(ReportResources.update::parameters.properties, + "application/json", + "parameters" +); + +@@encodedName(ReportResources.syncCertRecord::parameters.body, + "application/json", + "parameters" +); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp index ba4ebf710978..54cff88bb1e1 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp @@ -77,6 +77,6 @@ interface ScopingConfigurationResources { } @@doc(ScopingConfigurationResources.createOrUpdate::parameters.parameters, - "Parameters for the create or update operation" + "Parameters for the create or update operation, this is a singleton resource, so please make sure you're using 'default' as the name." ); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp index bb25e11a649b..a79f5b5d4128 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp @@ -35,7 +35,7 @@ model SnapshotResource extends Azure.ResourceManager.Foundations.ProxyResource { */ @extension("x-ms-client-flatten", true) @extension("x-ms-client-name", "properties") - properties: SnapshotProperties; + properties?: SnapshotProperties; } @armResourceOperations diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp index fc5c43c503fe..8b9b677237fe 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp @@ -39,7 +39,7 @@ model WebhookResource extends Azure.ResourceManager.Foundations.ProxyResource { /** - * Properties of the webhook. + * Webhook property. */ @extension("x-ms-client-flatten", true) @extension("x-ms-client-name", "properties") @@ -108,10 +108,3 @@ interface WebhookResources { "application/json", "parameters" ); - - -@@clientName(WebhookResources.createOrUpdate::parameters.parameters, "properties"); -@@encodedName(WebhookResources.createOrUpdate::parameters.parameters, - "application/json", - "properties" -); \ No newline at end of file diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index 51dc84834e00..ec8668e29855 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -1169,7 +1169,7 @@ { "name": "parameters", "in": "body", - "description": "Parameters for the create or update operation, this is a singleton resource, so please make sure you're using default as the name.", + "description": "Parameters for the create or update operation, this is a singleton resource, so please make sure you're using 'default' as the name.", "required": true, "schema": { "$ref": "#/definitions/ScopingConfigurationResource" @@ -4182,7 +4182,7 @@ "properties": { "properties": { "$ref": "#/definitions/SnapshotProperties", - "description": "Snapshot's property'.", + "description": "Snapshot's property.", "x-ms-client-flatten": true, "x-ms-client-name": "properties" } @@ -4361,24 +4361,6 @@ ] } }, - "Versions": { - "type": "string", - "description": "The available API versions.", - "enum": [ - "2024-06-27" - ], - "x-ms-enum": { - "name": "Versions", - "modelAsString": true, - "values": [ - { - "name": "v2024_05_14", - "value": "2024-06-27", - "description": "The 2024-06-27 API version." - } - ] - } - }, "WebhookKeyEnabled": { "type": "string", "description": "whether webhookKey is enabled.", From 0f1a8d56749d51b49ff4ecbbd7c12a7c13eb3e83 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Tue, 21 May 2024 19:15:45 +0800 Subject: [PATCH 13/33] tsp prettier --- .../AppComplianceAutomation.Management/operations.tsp | 7 ++++--- .../resources/ReportResource.tsp | 2 -- .../resources/ScopingConfigurationResource.tsp | 4 ++-- .../resources/WebhookResource.tsp | 6 ++---- 4 files changed, 8 insertions(+), 11 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp index 7e31129eeace..80ffcff33d40 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp @@ -20,9 +20,9 @@ interface AcatOperations { * @param Response The response or union of responses for success. * @param ErrorResponse The error response. */ -/** - * Base template for Acat report PUT Operations. - */ + /** + * Base template for Acat report PUT Operations. + */ @doc("Base template for Acat report PUT Operations.") AcatCreateOperation< HttpParameters extends {}, @@ -31,6 +31,7 @@ interface AcatOperations { ErrorResponse extends {} >( ...HttpParameters, + /** The body parameters for the operation. */ @doc("Resource create parameters.") @bodyRoot parameters: BodyParameter, ): Response | ErrorResponse; diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp index 4a308142c96e..f92450438b45 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp @@ -6,7 +6,6 @@ import "@typespec/rest"; import "../models/models.tsp"; import "../operations.tsp"; - using Azure.ClientGenerator.Core; using TypeSpec.Rest; using Azure.ResourceManager; @@ -157,7 +156,6 @@ interface ReportResources { >; } - @@doc(ReportResources.createOrUpdate::parameters.parameters, "Parameters for the create or update operation" ); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp index 54cff88bb1e1..2d44de953456 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp @@ -27,7 +27,8 @@ namespace Microsoft.AppComplianceAutomation; @Azure.ResourceManager.Private.armResourceInternal( ScopingConfigurationProperties ) -model ScopingConfigurationResource extends Azure.ResourceManager.Foundations.ProxyResource { +model ScopingConfigurationResource + extends Azure.ResourceManager.Foundations.ProxyResource { @key("scopingConfiguration") @segment("scopingConfigurations") @visibility("read") @@ -79,4 +80,3 @@ interface ScopingConfigurationResources { @@doc(ScopingConfigurationResources.createOrUpdate::parameters.parameters, "Parameters for the create or update operation, this is a singleton resource, so please make sure you're using 'default' as the name." ); - diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp index 8b9b677237fe..5d88e5e06d4f 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp @@ -36,15 +36,12 @@ model WebhookResource extends Azure.ResourceManager.Foundations.ProxyResource { @path name: string; - - /** * Webhook property. */ @extension("x-ms-client-flatten", true) @extension("x-ms-client-name", "properties") properties: WebhookProperties; // Replace 'WebhookProperties' with the actual type - } @armResourceOperations @@ -74,7 +71,8 @@ interface WebhookResources { WebhookResource, WebhookResourcePatch, Response = ArmResponse, - Error = ErrorResponse>; + Error = ErrorResponse + >; /** * Delete an AppComplianceAutomation webhook. From 5dc6ca7049cc576099c6e1962e72977e1b259a81 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Tue, 21 May 2024 23:57:16 +0800 Subject: [PATCH 14/33] change scoping name --- .../2024-06-27/ScopingConfiguration_CreateOrUpdate.json | 6 +++--- .../resources/ScopingConfigurationResource.tsp | 2 +- .../stable/2024-06-27/appcomplianceautomation.json | 8 ++++---- .../examples/ScopingConfiguration_CreateOrUpdate.json | 6 +++--- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_CreateOrUpdate.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_CreateOrUpdate.json index 9b918bdc7ac2..ac5ce8c3467a 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_CreateOrUpdate.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_CreateOrUpdate.json @@ -1,6 +1,8 @@ { "parameters": { "api-version": "2024-06-27", + "reportName": "testReportName", + "scopingConfigurationName": "default", "parameters": { "properties": { "answers": [ @@ -20,9 +22,7 @@ } ] } - }, - "reportName": "testReportName", - "scopingConfigurationName": "default" + } }, "responses": { "200": { diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp index 2d44de953456..89299e481a22 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp @@ -29,7 +29,7 @@ namespace Microsoft.AppComplianceAutomation; ) model ScopingConfigurationResource extends Azure.ResourceManager.Foundations.ProxyResource { - @key("scopingConfiguration") + @key("scopingConfigurationName") @segment("scopingConfigurations") @visibility("read") @doc("The scoping configuration of the specific report.") diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index ec8668e29855..f4c969d6977a 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -1092,7 +1092,7 @@ } } }, - "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/scopingConfigurations/{scopingConfiguration}": { + "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/scopingConfigurations/{scopingConfigurationName}": { "get": { "operationId": "ScopingConfiguration_Get", "tags": [ @@ -1112,7 +1112,7 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "scopingConfiguration", + "name": "scopingConfigurationName", "in": "path", "description": "The scoping configuration of the specific report.", "required": true, @@ -1159,7 +1159,7 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "scopingConfiguration", + "name": "scopingConfigurationName", "in": "path", "description": "The scoping configuration of the specific report.", "required": true, @@ -1221,7 +1221,7 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "scopingConfiguration", + "name": "scopingConfigurationName", "in": "path", "description": "The scoping configuration of the specific report.", "required": true, diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_CreateOrUpdate.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_CreateOrUpdate.json index 9b918bdc7ac2..ac5ce8c3467a 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_CreateOrUpdate.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_CreateOrUpdate.json @@ -1,6 +1,8 @@ { "parameters": { "api-version": "2024-06-27", + "reportName": "testReportName", + "scopingConfigurationName": "default", "parameters": { "properties": { "answers": [ @@ -20,9 +22,7 @@ } ] } - }, - "reportName": "testReportName", - "scopingConfigurationName": "default" + } }, "responses": { "200": { From 180a6a23e706221e1fda960ac297e00c1ebf2f2d Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Thu, 23 May 2024 16:47:55 +0800 Subject: [PATCH 15/33] upgrade the commontypes from v3 to v5 --- .../main.tsp | 2 +- .../2024-06-27/appcomplianceautomation.json | 158 +++++++++--------- 2 files changed, 80 insertions(+), 80 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp index 38f0a26de3cc..b446e38048fa 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp @@ -23,7 +23,7 @@ using TypeSpec.Versioning; title: "App Compliance Automation Tool for Microsoft 365", }) @versioned(Versions) -@armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v3) +@armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v5) namespace Microsoft.AppComplianceAutomation; /** diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index f4c969d6977a..c03a153d63d1 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -56,7 +56,7 @@ "description": "Check if the given name is available for a report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", @@ -64,7 +64,7 @@ "description": "The content of the action request", "required": true, "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityRequest" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/CheckNameAvailabilityRequest" }, "x-ms-client-name": "body" } @@ -73,13 +73,13 @@ "200": { "description": "Azure operation completed successfully.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/CheckNameAvailabilityResponse" } }, "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -99,7 +99,7 @@ "description": "Get the count of reports.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", @@ -122,7 +122,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -142,7 +142,7 @@ "description": "Get the resource overview status.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", @@ -165,7 +165,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -185,7 +185,7 @@ "description": "List the storage accounts which are in use by related reports", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", @@ -208,7 +208,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -231,7 +231,7 @@ "description": "Onboard given subscriptions to Microsoft.AppComplianceAutomation provider.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", @@ -268,7 +268,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -292,20 +292,20 @@ "description": "List the operations for the provider", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/OperationListResult" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationListResult" } }, "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -328,7 +328,7 @@ "description": "Get the AppComplianceAutomation report list for the tenant.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/QueryParameters.skipToken" @@ -362,7 +362,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -385,7 +385,7 @@ "description": "Get the AppComplianceAutomation report and its properties.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -406,7 +406,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -424,7 +424,7 @@ "description": "Create a new AppComplianceAutomation report or update an exiting AppComplianceAutomation report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -467,7 +467,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -489,7 +489,7 @@ "description": "Update an exiting AppComplianceAutomation report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -534,7 +534,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -556,7 +556,7 @@ "description": "Delete an AppComplianceAutomation report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -588,7 +588,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -612,7 +612,7 @@ "description": "Checks the report's nested resource name availability, e.g: Webhooks, Evidences, Snapshots.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -628,7 +628,7 @@ "description": "NameAvailabilityRequest object.", "required": true, "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityRequest" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/CheckNameAvailabilityRequest" }, "x-ms-client-name": "body" } @@ -637,13 +637,13 @@ "200": { "description": "Azure operation completed successfully.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/CheckNameAvailabilityResponse" } }, "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -669,7 +669,7 @@ "description": "Returns a paginated list of evidences for a specified report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/QueryParameters.skipToken" @@ -711,7 +711,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -734,7 +734,7 @@ "description": "Get the evidence metadata", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -763,7 +763,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -781,7 +781,7 @@ "description": "Create or Update an evidence a specified report", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/ExtraParameter.offerGuid" @@ -831,7 +831,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -849,7 +849,7 @@ "description": "Delete an existent evidence from a specified report", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -878,7 +878,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -898,7 +898,7 @@ "description": "Download evidence file.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -937,7 +937,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -957,7 +957,7 @@ "description": "Fix the AppComplianceAutomation report error. e.g: App Compliance Automation Tool service unregistered, automation removed.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -992,7 +992,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1016,7 +1016,7 @@ "description": "Fix the AppComplianceAutomation report error. e.g: App Compliance Automation Tool service unregistered, automation removed.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1037,7 +1037,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1057,7 +1057,7 @@ "description": "Returns a list format of the singleton scopingConfiguration for a specified report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1078,7 +1078,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1101,7 +1101,7 @@ "description": "Get the AppComplianceAutomation scoping configuration of the specific report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1130,7 +1130,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1148,7 +1148,7 @@ "description": "Get the AppComplianceAutomation scoping configuration of the specific report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1192,7 +1192,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1210,7 +1210,7 @@ "description": "Clean the AppComplianceAutomation scoping configuration of the specific report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1239,7 +1239,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1259,7 +1259,7 @@ "description": "Get the AppComplianceAutomation snapshot list.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/QueryParameters.skipToken" @@ -1301,7 +1301,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1324,7 +1324,7 @@ "description": "Get the AppComplianceAutomation snapshot and its properties.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1353,7 +1353,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1373,7 +1373,7 @@ "description": "Download compliance needs from snapshot, like: Compliance Report, Resource List.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1426,7 +1426,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1459,7 +1459,7 @@ "description": "Synchronize attestation record from app compliance.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1504,7 +1504,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1528,7 +1528,7 @@ "description": "Verify the AppComplianceAutomation report health status.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1563,7 +1563,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1587,7 +1587,7 @@ "description": "Get the AppComplianceAutomation webhook list.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/QueryParameters.skipToken" @@ -1629,7 +1629,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1652,7 +1652,7 @@ "description": "Get the AppComplianceAutomation webhook and its properties.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1681,7 +1681,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1699,7 +1699,7 @@ "description": "Create a new AppComplianceAutomation webhook or update an exiting AppComplianceAutomation webhook.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1743,7 +1743,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1761,7 +1761,7 @@ "description": "Update an exiting AppComplianceAutomation webhook.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1800,7 +1800,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1818,7 +1818,7 @@ "description": "Delete an AppComplianceAutomation webhook.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1847,7 +1847,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -1867,7 +1867,7 @@ "description": "Trigger quick evaluation for the given subscriptions.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", @@ -1904,7 +1904,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } }, @@ -2518,7 +2518,7 @@ ], "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" } ] }, @@ -3356,7 +3356,7 @@ ], "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" } ] }, @@ -3998,7 +3998,7 @@ ], "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" } ] }, @@ -4159,7 +4159,7 @@ "readOnly": true }, "reportSystemData": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/systemData", + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/systemData", "description": "Metadata pertaining to creation and last modification of the resource.", "readOnly": true }, @@ -4189,7 +4189,7 @@ }, "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" } ] }, @@ -4469,7 +4469,7 @@ ], "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" } ] }, From 048e2e091d95f2ebc7f82b6489c3786b8cbe5f4b Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Thu, 23 May 2024 17:21:09 +0800 Subject: [PATCH 16/33] change commonTypes version to v3 --- .../main.tsp | 2 +- .../2024-06-27/appcomplianceautomation.json | 158 +++++++++--------- 2 files changed, 80 insertions(+), 80 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp index b446e38048fa..38f0a26de3cc 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp @@ -23,7 +23,7 @@ using TypeSpec.Versioning; title: "App Compliance Automation Tool for Microsoft 365", }) @versioned(Versions) -@armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v5) +@armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v3) namespace Microsoft.AppComplianceAutomation; /** diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index c03a153d63d1..f4c969d6977a 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -56,7 +56,7 @@ "description": "Check if the given name is available for a report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", @@ -64,7 +64,7 @@ "description": "The content of the action request", "required": true, "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/CheckNameAvailabilityRequest" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityRequest" }, "x-ms-client-name": "body" } @@ -73,13 +73,13 @@ "200": { "description": "Azure operation completed successfully.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/CheckNameAvailabilityResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityResponse" } }, "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -99,7 +99,7 @@ "description": "Get the count of reports.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", @@ -122,7 +122,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -142,7 +142,7 @@ "description": "Get the resource overview status.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", @@ -165,7 +165,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -185,7 +185,7 @@ "description": "List the storage accounts which are in use by related reports", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", @@ -208,7 +208,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -231,7 +231,7 @@ "description": "Onboard given subscriptions to Microsoft.AppComplianceAutomation provider.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", @@ -268,7 +268,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -292,20 +292,20 @@ "description": "List the operations for the provider", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationListResult" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/OperationListResult" } }, "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -328,7 +328,7 @@ "description": "Get the AppComplianceAutomation report list for the tenant.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/QueryParameters.skipToken" @@ -362,7 +362,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -385,7 +385,7 @@ "description": "Get the AppComplianceAutomation report and its properties.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -406,7 +406,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -424,7 +424,7 @@ "description": "Create a new AppComplianceAutomation report or update an exiting AppComplianceAutomation report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -467,7 +467,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -489,7 +489,7 @@ "description": "Update an exiting AppComplianceAutomation report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -534,7 +534,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -556,7 +556,7 @@ "description": "Delete an AppComplianceAutomation report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -588,7 +588,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -612,7 +612,7 @@ "description": "Checks the report's nested resource name availability, e.g: Webhooks, Evidences, Snapshots.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -628,7 +628,7 @@ "description": "NameAvailabilityRequest object.", "required": true, "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/CheckNameAvailabilityRequest" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityRequest" }, "x-ms-client-name": "body" } @@ -637,13 +637,13 @@ "200": { "description": "Azure operation completed successfully.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/CheckNameAvailabilityResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityResponse" } }, "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -669,7 +669,7 @@ "description": "Returns a paginated list of evidences for a specified report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/QueryParameters.skipToken" @@ -711,7 +711,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -734,7 +734,7 @@ "description": "Get the evidence metadata", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -763,7 +763,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -781,7 +781,7 @@ "description": "Create or Update an evidence a specified report", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/ExtraParameter.offerGuid" @@ -831,7 +831,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -849,7 +849,7 @@ "description": "Delete an existent evidence from a specified report", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -878,7 +878,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -898,7 +898,7 @@ "description": "Download evidence file.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -937,7 +937,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -957,7 +957,7 @@ "description": "Fix the AppComplianceAutomation report error. e.g: App Compliance Automation Tool service unregistered, automation removed.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -992,7 +992,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1016,7 +1016,7 @@ "description": "Fix the AppComplianceAutomation report error. e.g: App Compliance Automation Tool service unregistered, automation removed.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1037,7 +1037,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1057,7 +1057,7 @@ "description": "Returns a list format of the singleton scopingConfiguration for a specified report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1078,7 +1078,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1101,7 +1101,7 @@ "description": "Get the AppComplianceAutomation scoping configuration of the specific report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1130,7 +1130,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1148,7 +1148,7 @@ "description": "Get the AppComplianceAutomation scoping configuration of the specific report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1192,7 +1192,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1210,7 +1210,7 @@ "description": "Clean the AppComplianceAutomation scoping configuration of the specific report.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1239,7 +1239,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1259,7 +1259,7 @@ "description": "Get the AppComplianceAutomation snapshot list.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/QueryParameters.skipToken" @@ -1301,7 +1301,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1324,7 +1324,7 @@ "description": "Get the AppComplianceAutomation snapshot and its properties.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1353,7 +1353,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1373,7 +1373,7 @@ "description": "Download compliance needs from snapshot, like: Compliance Report, Resource List.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1426,7 +1426,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1459,7 +1459,7 @@ "description": "Synchronize attestation record from app compliance.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1504,7 +1504,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1528,7 +1528,7 @@ "description": "Verify the AppComplianceAutomation report health status.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1563,7 +1563,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1587,7 +1587,7 @@ "description": "Get the AppComplianceAutomation webhook list.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/QueryParameters.skipToken" @@ -1629,7 +1629,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1652,7 +1652,7 @@ "description": "Get the AppComplianceAutomation webhook and its properties.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1681,7 +1681,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1699,7 +1699,7 @@ "description": "Create a new AppComplianceAutomation webhook or update an exiting AppComplianceAutomation webhook.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1743,7 +1743,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1761,7 +1761,7 @@ "description": "Update an exiting AppComplianceAutomation webhook.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1800,7 +1800,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1818,7 +1818,7 @@ "description": "Delete an AppComplianceAutomation webhook.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "reportName", @@ -1847,7 +1847,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -1867,7 +1867,7 @@ "description": "Trigger quick evaluation for the given subscriptions.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", @@ -1904,7 +1904,7 @@ "default": { "description": "An unexpected error response.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, @@ -2518,7 +2518,7 @@ ], "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, @@ -3356,7 +3356,7 @@ ], "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, @@ -3998,7 +3998,7 @@ ], "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, @@ -4159,7 +4159,7 @@ "readOnly": true }, "reportSystemData": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/systemData", + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/systemData", "description": "Metadata pertaining to creation and last modification of the resource.", "readOnly": true }, @@ -4189,7 +4189,7 @@ }, "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, @@ -4469,7 +4469,7 @@ ], "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, From bfc7709a8d89c650c96a098949ff1ccf3fa0a1ab Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Tue, 28 May 2024 10:06:24 +0800 Subject: [PATCH 17/33] add service-dir --- .../AppComplianceAutomation.Management/main.tsp | 2 +- .../AppComplianceAutomation.Management/tspconfig.yaml | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp index 38f0a26de3cc..6e9ffc9b4780 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/main.tsp @@ -35,5 +35,5 @@ enum Versions { */ @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1) @useDependency(Azure.Core.Versions.v1_0_Preview_1) - v2024_05_14: "2024-06-27", + v2024_06_27: "2024-06-27", } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml b/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml index 74faecc5ee80..204c6f546ce2 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml @@ -1,3 +1,9 @@ +parameters: + "service-dir": + default: "sdk/appcomplianceautomation" + "dependencies": + "additionalDirectories": [] + default: "" emit: - "@azure-tools/typespec-autorest" options: From 3aa5f8881b47d0033ad13a19d1611aff878805fe Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Wed, 29 May 2024 15:30:21 +0800 Subject: [PATCH 18/33] format tspconfig.yaml --- .../AppComplianceAutomation.Management/tspconfig.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml b/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml index 204c6f546ce2..ceabdc448510 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml @@ -1,5 +1,5 @@ parameters: - "service-dir": + "service-dir": default: "sdk/appcomplianceautomation" "dependencies": "additionalDirectories": [] From ed5859a2240a5627ee5284392b87fe0b3118ba41 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Wed, 29 May 2024 15:57:43 +0800 Subject: [PATCH 19/33] modify tspconfig.yaml --- .../AppComplianceAutomation.Management/tspconfig.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml b/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml index ceabdc448510..f2774bb66b56 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml @@ -31,4 +31,4 @@ options: examples-directory: "{project-root}/examples" linter: extends: - - "@azure-tools/typespec-azure-resource-manager/all" + - "@azure-tools/typespec-azure-rulesets/resource-manager" From 8e393392c3eee90f292f9033fa87bd809c9f8619 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Thu, 30 May 2024 08:14:46 +0800 Subject: [PATCH 20/33] remove custom operations --- .../operations.tsp | 131 ------------------ .../resources/EvidenceResource.tsp | 22 ++- .../resources/ReportResource.tsp | 26 ++-- .../ScopingConfigurationResource.tsp | 15 +- .../resources/WebhookResource.tsp | 19 ++- .../2024-06-27/appcomplianceautomation.json | 12 +- 6 files changed, 68 insertions(+), 157 deletions(-) delete mode 100644 specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp deleted file mode 100644 index 80ffcff33d40..000000000000 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/operations.tsp +++ /dev/null @@ -1,131 +0,0 @@ -import "@azure-tools/typespec-azure-core"; -import "@azure-tools/typespec-azure-resource-manager"; -import "@typespec/openapi"; -import "@typespec/rest"; - -using TypeSpec.Rest; -using Azure.ResourceManager; -using TypeSpec.Http; -using OpenAPI; -using Azure.Core; - -namespace Microsoft.AppComplianceAutomation; - -@armResourceOperations -interface AcatOperations { - /** - * @dev The base template for Azure Resource Manager PUT Operations. - * @param HttpParameters The parameter object for the operation. - * @param BodyParameter The body parameter - * @param Response The response or union of responses for success. - * @param ErrorResponse The error response. - */ - /** - * Base template for Acat report PUT Operations. - */ - @doc("Base template for Acat report PUT Operations.") - AcatCreateOperation< - HttpParameters extends {}, - BodyParameter extends {}, - Response extends {}, - ErrorResponse extends {} - >( - ...HttpParameters, - - /** The body parameters for the operation. */ - @doc("Resource create parameters.") @bodyRoot parameters: BodyParameter, - ): Response | ErrorResponse; - - /** - * A long-running resource CreateOrUpdate (PUT) - * @template Resource the resource being patched - * @template BaseParameters Optional. Allows overriding the operation parameters - * @template LroHeaders Optional. Allows overriding the lro headers returned on resource create - * @template Parameters Optional. Additional parameters after the path parameters - * @template Response Optional. The success response for the createOrUpdate operation - * @template Error Optional. The error response, if non-standard. - */ - @autoRoute - @doc("Create a {name}", Resource) - @extension("x-ms-long-running-operation", true) - @extension( - "x-ms-long-running-operation-options", - { - `final-state-via`: "azure-async-operation", - } - ) - @armResourceCreateOrUpdate(Resource) - @put - AcatResourceCreateOrUpdateAsync< - Resource extends Azure.ResourceManager.Foundations.Resource, - BaseParameters = Azure.ResourceManager.Foundations.DefaultBaseParameters, - LroHeaders extends TypeSpec.Reflection.Model = Azure.Core.Foundations.RetryAfterHeader, - Parameters extends {} = {}, - Response extends {} = ArmResourceUpdatedResponse | ArmResourceCreatedResponse< - Resource, - LroHeaders - >, - Error extends {} = ErrorResponse - > is AcatOperations.AcatCreateOperation< - ResourceInstanceParameters & Parameters, - Resource, - ArmResourceUpdatedResponse | ArmResourceCreatedResponse< - Resource, - LroHeaders - >, - Error - >; - - /** - * @dev A long-running resource CreateOrUpdate (PUT) - * @template Resource the resource being patched - * @template BaseParameters Optional. Allows overriding the operation parameters - * @template LroHeaders Optional. Allows overriding the lro headers returned on resource create - * @template Parameters Optional. Additional parameters after the path parameters - * @template Response Optional. The success response for the createOrReplace operation - * @template Error Optional. The error response, if non-standard. - */ - AcatResourceCreateOrReplaceAsync< - Resource extends Azure.ResourceManager.Foundations.Resource, - BaseParameters = Azure.ResourceManager.Foundations.BaseParameters, - LroHeaders extends TypeSpec.Reflection.Model = Azure.Core.Foundations.RetryAfterHeader, - Parameters extends {} = {}, - Response extends {} = ArmResourceUpdatedResponse | ArmResourceCreatedResponse< - Resource, - LroHeaders - >, - Error extends {} = ErrorResponse - > is AcatOperations.AcatResourceCreateOrUpdateAsync< - Resource, - BaseParameters, - LroHeaders, - Parameters, - Response, - Error - >; - - /** - * Synchronous PUT operation for Azure Resource Manager resources - * @template Resource the resource being patched - * @template BaseParameters Optional. Allows overriding the operation parameters - * @template Parameters Optional. Additional parameters after the path parameters - * @template Response Optional. The success response for the createOrUpdate operation - * @template Error Optional. The error response, if non-standard. - */ - @autoRoute - @doc("Create a {name}", Resource) - @armResourceCreateOrUpdate(Resource) - @put - AcatResourceCreateOrReplaceSync< - Resource extends Azure.ResourceManager.Foundations.Resource, - BaseParameters = Azure.ResourceManager.Foundations.DefaultBaseParameters, - Parameters extends {} = {}, - Response extends {} = ArmResourceUpdatedResponse | ArmResourceCreatedSyncResponse, - Error extends {} = ErrorResponse - > is AcatOperations.AcatCreateOperation< - ResourceInstanceParameters & Parameters, - Resource, - Response, - Error - >; -} diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp index e809352974c9..9bfb2a1ea982 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp @@ -1,6 +1,8 @@ import "@azure-tools/typespec-azure-core"; import "@azure-tools/typespec-azure-resource-manager"; +import "@azure-tools/typespec-client-generator-core"; import "@typespec/openapi"; +import "@typespec/rest"; import "../models/models.tsp"; import "./ReportResource.tsp"; @@ -8,6 +10,7 @@ using TypeSpec.Rest; using Azure.ResourceManager; using TypeSpec.Http; using OpenAPI; +using Azure.ClientGenerator.Core; namespace Microsoft.AppComplianceAutomation; /** @@ -39,7 +42,7 @@ model EvidenceResource extends Azure.ResourceManager.Foundations.ProxyResource { @armResourceOperations @tag("AppComplianceAutomation") -interface EvidenceResources { +interface Evidence { /** * Get the evidence metadata */ @@ -57,7 +60,7 @@ interface EvidenceResources { */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" @operationId("Evidences_CreateOrUpdate") - createOrUpdate is AcatOperations.AcatResourceCreateOrReplaceSync< + createOrUpdate is ArmResourceCreateOrReplaceSync< EvidenceResource, { ...Azure.ResourceManager.Foundations.BaseParameters; @@ -97,13 +100,22 @@ interface EvidenceResources { >; } -@@doc(EvidenceResources.createOrUpdate::parameters.parameters, +@@doc(Evidence.createOrUpdate::parameters.resource, "Parameters for the create or update operation" ); -@@encodedName(EvidenceResources.download::parameters.body, +@@encodedName(Evidence.download::parameters.body, "application/json", "parameters" ); -@@doc(EvidenceResources.download::parameters.body, +@@doc(Evidence.download::parameters.body, "Parameters for the query operation" ); + +@@encodedName(Evidence.createOrUpdate::parameters.resource, + "application/json", + "parameters" +); + +@@OpenAPI.extension(Evidence.createOrUpdate::parameters.resource, "x-ms-client-name", "parameters"); + +@@clientName(Evidence.createOrUpdate::parameters.resource, "parameters"); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp index f92450438b45..238034c5f519 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp @@ -4,7 +4,6 @@ import "@azure-tools/typespec-client-generator-core"; import "@typespec/openapi"; import "@typespec/rest"; import "../models/models.tsp"; -import "../operations.tsp"; using Azure.ClientGenerator.Core; using TypeSpec.Rest; @@ -43,7 +42,7 @@ model ReportResource extends Azure.ResourceManager.Foundations.ProxyResource { @armResourceOperations @tag("AppComplianceAutomation") -interface ReportResources { +interface Report { /** * Get the AppComplianceAutomation report and its properties. */ @@ -56,7 +55,7 @@ interface ReportResources { */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" @operationId("Reports_CreateOrUpdate") - createOrUpdate is AcatOperations.AcatResourceCreateOrReplaceAsync< + createOrUpdate is ArmResourceCreateOrReplaceAsync< ReportResource, Azure.ResourceManager.Foundations.BaseParameters >; @@ -156,25 +155,34 @@ interface ReportResources { >; } -@@doc(ReportResources.createOrUpdate::parameters.parameters, +@@doc(Report.createOrUpdate::parameters.resource, "Parameters for the create or update operation" ); -@@doc(ReportResources.update::parameters.properties, +@@encodedName(Report.createOrUpdate::parameters.resource, + "application/json", + "parameters" +); + +@@OpenAPI.extension(Report.createOrUpdate::parameters.resource, "x-ms-client-name", "parameters"); + +@@clientName(Report.createOrUpdate::parameters.resource, "parameters"); + +@@doc(Report.update::parameters.properties, "Parameters for the create or update operation" ); -@@doc(ReportResources.syncCertRecord::parameters.body, +@@doc(Report.syncCertRecord::parameters.body, "Parameters for synchronize certification record operation" ); -@@doc(ReportResources.checkNameAvailability::parameters.body, +@@doc(Report.checkNameAvailability::parameters.body, "NameAvailabilityRequest object." ); -@@encodedName(ReportResources.update::parameters.properties, +@@encodedName(Report.update::parameters.properties, "application/json", "parameters" ); -@@encodedName(ReportResources.syncCertRecord::parameters.body, +@@encodedName(Report.syncCertRecord::parameters.body, "application/json", "parameters" ); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp index 89299e481a22..668c5392a3cb 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp @@ -47,7 +47,7 @@ model ScopingConfigurationResource @armResourceOperations @tag("AppComplianceAutomation") -interface ScopingConfigurationResources { +interface ScopingConfiguration { /** * Get the AppComplianceAutomation scoping configuration of the specific report. */ @@ -60,7 +60,7 @@ interface ScopingConfigurationResources { */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" @operationId("ScopingConfiguration_CreateOrUpdate") - createOrUpdate is AcatOperations.AcatResourceCreateOrReplaceSync; + createOrUpdate is ArmResourceCreateOrReplaceSync; /** * Clean the AppComplianceAutomation scoping configuration of the specific report. @@ -77,6 +77,15 @@ interface ScopingConfigurationResources { list is ArmResourceListByParent; } -@@doc(ScopingConfigurationResources.createOrUpdate::parameters.parameters, +@@doc(ScopingConfiguration.createOrUpdate::parameters.resource, "Parameters for the create or update operation, this is a singleton resource, so please make sure you're using 'default' as the name." ); + +@@encodedName(ScopingConfiguration.createOrUpdate::parameters.resource, + "application/json", + "parameters" +); + +@@OpenAPI.extension(ScopingConfiguration.createOrUpdate::parameters.resource, "x-ms-client-name", "parameters"); + +@@clientName(ScopingConfiguration.createOrUpdate::parameters.resource, "parameters"); \ No newline at end of file diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp index 5d88e5e06d4f..7a90c8b05ad4 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp @@ -46,7 +46,7 @@ model WebhookResource extends Azure.ResourceManager.Foundations.ProxyResource { @armResourceOperations @tag("AppComplianceAutomation") -interface WebhookResources { +interface Webhook { /** * Get the AppComplianceAutomation webhook and its properties. */ @@ -59,7 +59,7 @@ interface WebhookResources { */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" @operationId("Webhooks_CreateOrUpdate") - createOrUpdate is AcatOperations.AcatResourceCreateOrReplaceSync; + createOrUpdate is ArmResourceCreateOrReplaceSync; /** * Update an exiting AppComplianceAutomation webhook. @@ -95,14 +95,23 @@ interface WebhookResources { >; } -@@doc(WebhookResources.createOrUpdate::parameters.parameters, +@@doc(Webhook.createOrUpdate::parameters.resource, "Parameters for the create or update operation" ); -@@doc(WebhookResources.update::parameters.properties, +@@doc(Webhook.update::parameters.properties, "Parameters for the create or update operation" ); -@@encodedName(WebhookResources.update::parameters.properties, +@@encodedName(Webhook.update::parameters.properties, "application/json", "parameters" ); + +@@encodedName(Webhook.createOrUpdate::parameters.resource, + "application/json", + "parameters" +); + +@@OpenAPI.extension(Webhook.createOrUpdate::parameters.resource, "x-ms-client-name", "parameters"); + +@@clientName(Webhook.createOrUpdate::parameters.resource, "parameters"); \ No newline at end of file diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index f4c969d6977a..2eaecc680933 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -441,7 +441,8 @@ "required": true, "schema": { "$ref": "#/definitions/ReportResource" - } + }, + "x-ms-client-name": "parameters" } ], "responses": { @@ -812,7 +813,8 @@ "required": true, "schema": { "$ref": "#/definitions/EvidenceResource" - } + }, + "x-ms-client-name": "parameters" } ], "responses": { @@ -1173,7 +1175,8 @@ "required": true, "schema": { "$ref": "#/definitions/ScopingConfigurationResource" - } + }, + "x-ms-client-name": "parameters" } ], "responses": { @@ -1724,7 +1727,8 @@ "required": true, "schema": { "$ref": "#/definitions/WebhookResource" - } + }, + "x-ms-client-name": "parameters" } ], "responses": { From e8c77ac49322e50444133a0427380d288a9c9475 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Thu, 30 May 2024 08:20:33 +0800 Subject: [PATCH 21/33] modify re pattern of snapshot name --- .../resources/SnapshotResource.tsp | 2 +- .../stable/2024-06-27/appcomplianceautomation.json | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp index a79f5b5d4128..0a472524ace5 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp @@ -27,7 +27,7 @@ model SnapshotResource extends Azure.ResourceManager.Foundations.ProxyResource { @key("snapshotName") @segment("snapshots") @visibility("read") - @pattern("^[a-zA-Z0-9-]{1,64}$") + @pattern("^[a-zA-Z0-9-_]{1,64}$") name: string; /** diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index 2eaecc680933..e0815ebf20d0 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -1343,7 +1343,7 @@ "description": "Snapshot Name.", "required": true, "type": "string", - "pattern": "^[a-zA-Z0-9-]{1,64}$" + "pattern": "^[a-zA-Z0-9-_]{1,64}$" } ], "responses": { @@ -1392,7 +1392,7 @@ "description": "Snapshot Name.", "required": true, "type": "string", - "pattern": "^[a-zA-Z0-9-]{1,64}$" + "pattern": "^[a-zA-Z0-9-_]{1,64}$" }, { "name": "parameters", From 1b6934da87b4e1a1b7794536937bede1fea8ad4b Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Thu, 30 May 2024 09:48:30 +0800 Subject: [PATCH 22/33] make the resource x-ms-client-name properties --- .../resources/EvidenceResource.tsp | 2 +- .../resources/ReportResource.tsp | 2 +- .../resources/ScopingConfigurationResource.tsp | 2 +- .../resources/WebhookResource.tsp | 2 +- .../stable/2024-06-27/appcomplianceautomation.json | 8 ++++---- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp index 9bfb2a1ea982..857eb68ee42a 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp @@ -116,6 +116,6 @@ interface Evidence { "parameters" ); -@@OpenAPI.extension(Evidence.createOrUpdate::parameters.resource, "x-ms-client-name", "parameters"); +@@OpenAPI.extension(Evidence.createOrUpdate::parameters.resource, "x-ms-client-name", "properties"); @@clientName(Evidence.createOrUpdate::parameters.resource, "parameters"); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp index 238034c5f519..dad2958b857a 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp @@ -163,7 +163,7 @@ interface Report { "parameters" ); -@@OpenAPI.extension(Report.createOrUpdate::parameters.resource, "x-ms-client-name", "parameters"); +@@OpenAPI.extension(Report.createOrUpdate::parameters.resource, "x-ms-client-name", "properties"); @@clientName(Report.createOrUpdate::parameters.resource, "parameters"); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp index 668c5392a3cb..26f94018da9c 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp @@ -86,6 +86,6 @@ interface ScopingConfiguration { "parameters" ); -@@OpenAPI.extension(ScopingConfiguration.createOrUpdate::parameters.resource, "x-ms-client-name", "parameters"); +@@OpenAPI.extension(ScopingConfiguration.createOrUpdate::parameters.resource, "x-ms-client-name", "properties"); @@clientName(ScopingConfiguration.createOrUpdate::parameters.resource, "parameters"); \ No newline at end of file diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp index 7a90c8b05ad4..11ac30558e3b 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp @@ -112,6 +112,6 @@ interface Webhook { "parameters" ); -@@OpenAPI.extension(Webhook.createOrUpdate::parameters.resource, "x-ms-client-name", "parameters"); +@@OpenAPI.extension(Webhook.createOrUpdate::parameters.resource, "x-ms-client-name", "properties"); @@clientName(Webhook.createOrUpdate::parameters.resource, "parameters"); \ No newline at end of file diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index e0815ebf20d0..19a4f9029e78 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -442,7 +442,7 @@ "schema": { "$ref": "#/definitions/ReportResource" }, - "x-ms-client-name": "parameters" + "x-ms-client-name": "properties" } ], "responses": { @@ -814,7 +814,7 @@ "schema": { "$ref": "#/definitions/EvidenceResource" }, - "x-ms-client-name": "parameters" + "x-ms-client-name": "properties" } ], "responses": { @@ -1176,7 +1176,7 @@ "schema": { "$ref": "#/definitions/ScopingConfigurationResource" }, - "x-ms-client-name": "parameters" + "x-ms-client-name": "properties" } ], "responses": { @@ -1728,7 +1728,7 @@ "schema": { "$ref": "#/definitions/WebhookResource" }, - "x-ms-client-name": "parameters" + "x-ms-client-name": "properties" } ], "responses": { From e9a88d54c86e5932f9fec6f847efc09978a80b1f Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Thu, 30 May 2024 09:56:54 +0800 Subject: [PATCH 23/33] format typespec --- .../resources/EvidenceResource.tsp | 9 +++++---- .../resources/ReportResource.tsp | 5 ++++- .../resources/ScopingConfigurationResource.tsp | 9 +++++++-- .../resources/WebhookResource.tsp | 7 +++++-- 4 files changed, 21 insertions(+), 9 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp index 857eb68ee42a..9588ddafd516 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp @@ -107,15 +107,16 @@ interface Evidence { "application/json", "parameters" ); -@@doc(Evidence.download::parameters.body, - "Parameters for the query operation" -); +@@doc(Evidence.download::parameters.body, "Parameters for the query operation"); @@encodedName(Evidence.createOrUpdate::parameters.resource, "application/json", "parameters" ); -@@OpenAPI.extension(Evidence.createOrUpdate::parameters.resource, "x-ms-client-name", "properties"); +@@OpenAPI.extension(Evidence.createOrUpdate::parameters.resource, + "x-ms-client-name", + "properties" +); @@clientName(Evidence.createOrUpdate::parameters.resource, "parameters"); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp index dad2958b857a..0da41fc45261 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp @@ -163,7 +163,10 @@ interface Report { "parameters" ); -@@OpenAPI.extension(Report.createOrUpdate::parameters.resource, "x-ms-client-name", "properties"); +@@OpenAPI.extension(Report.createOrUpdate::parameters.resource, + "x-ms-client-name", + "properties" +); @@clientName(Report.createOrUpdate::parameters.resource, "parameters"); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp index 26f94018da9c..5e5d8a561893 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp @@ -86,6 +86,11 @@ interface ScopingConfiguration { "parameters" ); -@@OpenAPI.extension(ScopingConfiguration.createOrUpdate::parameters.resource, "x-ms-client-name", "properties"); +@@OpenAPI.extension(ScopingConfiguration.createOrUpdate::parameters.resource, + "x-ms-client-name", + "properties" +); -@@clientName(ScopingConfiguration.createOrUpdate::parameters.resource, "parameters"); \ No newline at end of file +@@clientName(ScopingConfiguration.createOrUpdate::parameters.resource, + "parameters" +); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp index 11ac30558e3b..892a8983cad0 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp @@ -112,6 +112,9 @@ interface Webhook { "parameters" ); -@@OpenAPI.extension(Webhook.createOrUpdate::parameters.resource, "x-ms-client-name", "properties"); +@@OpenAPI.extension(Webhook.createOrUpdate::parameters.resource, + "x-ms-client-name", + "properties" +); -@@clientName(Webhook.createOrUpdate::parameters.resource, "parameters"); \ No newline at end of file +@@clientName(Webhook.createOrUpdate::parameters.resource, "parameters"); From ca49a044f3ac654e5dacae340ef19029c30d5bc4 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Thu, 30 May 2024 15:13:24 +0800 Subject: [PATCH 24/33] remove suffix of snapshot --- .../resources/SnapshotResource.tsp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp index 0a472524ace5..ef206fcd61d2 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp @@ -40,7 +40,7 @@ model SnapshotResource extends Azure.ResourceManager.Foundations.ProxyResource { @armResourceOperations @tag("AppComplianceAutomation") -interface SnapshotResources { +interface Snapshot { /** * Get the AppComplianceAutomation snapshot and its properties. */ @@ -74,6 +74,6 @@ interface SnapshotResources { >; } -@@doc(SnapshotResources.download::parameters.body, +@@doc(Snapshot.download::parameters.body, "Parameters for the query operation" ); From e4dd975ea2b956032e71424b71cc486b7fc15fde Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Fri, 31 May 2024 13:28:46 +0800 Subject: [PATCH 25/33] use requestBody replace parameters --- .../resources/EvidenceResource.tsp | 14 ++++-- .../resources/ReportResource.tsp | 20 ++++++-- .../ScopingConfigurationResource.tsp | 6 +-- .../resources/WebhookResource.tsp | 8 ++-- .../routes.tsp | 4 +- .../2024-06-27/appcomplianceautomation.json | 46 +++++++++---------- 6 files changed, 57 insertions(+), 41 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp index 9588ddafd516..66c3be73debc 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp @@ -105,18 +105,24 @@ interface Evidence { ); @@encodedName(Evidence.download::parameters.body, "application/json", - "parameters" + "requestBody" ); +@@clientName(Evidence.download::parameters.body, "requestBody"); +@@OpenAPI.extension(Evidence.download::parameters.body, + "x-ms-client-name", + "requestBody" +); + @@doc(Evidence.download::parameters.body, "Parameters for the query operation"); @@encodedName(Evidence.createOrUpdate::parameters.resource, "application/json", - "parameters" + "requestBody" ); @@OpenAPI.extension(Evidence.createOrUpdate::parameters.resource, "x-ms-client-name", - "properties" + "requestBody" ); -@@clientName(Evidence.createOrUpdate::parameters.resource, "parameters"); +@@clientName(Evidence.createOrUpdate::parameters.resource, "requestBody"); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp index 0da41fc45261..a38ed08201c1 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp @@ -160,15 +160,15 @@ interface Report { ); @@encodedName(Report.createOrUpdate::parameters.resource, "application/json", - "parameters" + "requestBody" ); @@OpenAPI.extension(Report.createOrUpdate::parameters.resource, "x-ms-client-name", - "properties" + "requestBody" ); -@@clientName(Report.createOrUpdate::parameters.resource, "parameters"); +@@clientName(Report.createOrUpdate::parameters.resource, "requestBody"); @@doc(Report.update::parameters.properties, "Parameters for the create or update operation" @@ -182,10 +182,20 @@ interface Report { @@encodedName(Report.update::parameters.properties, "application/json", - "parameters" + "requestBody" +); +@@clientName(Report.update::parameters.properties, "requestBody"); +@@OpenAPI.extension(Report.update::parameters.properties, + "x-ms-client-name", + "requestBody" ); @@encodedName(Report.syncCertRecord::parameters.body, "application/json", - "parameters" + "requestBody" +); +@@clientName(Report.syncCertRecord::parameters.body, "requestBody"); +@@OpenAPI.extension(Report.syncCertRecord::parameters.body, + "x-ms-client-name", + "requestBody" ); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp index 5e5d8a561893..ccd18ed6e8e8 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp @@ -83,14 +83,14 @@ interface ScopingConfiguration { @@encodedName(ScopingConfiguration.createOrUpdate::parameters.resource, "application/json", - "parameters" + "requestBody" ); @@OpenAPI.extension(ScopingConfiguration.createOrUpdate::parameters.resource, "x-ms-client-name", - "properties" + "requestBody" ); @@clientName(ScopingConfiguration.createOrUpdate::parameters.resource, - "parameters" + "requestBody" ); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp index 892a8983cad0..4bdaad4e957f 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp @@ -104,17 +104,17 @@ interface Webhook { @@encodedName(Webhook.update::parameters.properties, "application/json", - "parameters" + "requestBody" ); @@encodedName(Webhook.createOrUpdate::parameters.resource, "application/json", - "parameters" + "requestBody" ); @@OpenAPI.extension(Webhook.createOrUpdate::parameters.resource, "x-ms-client-name", - "properties" + "requestBody" ); -@@clientName(Webhook.createOrUpdate::parameters.resource, "parameters"); +@@clientName(Webhook.createOrUpdate::parameters.resource, "requestBody"); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp index f5e9912fb6f4..6a669a148395 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp @@ -83,9 +83,9 @@ interface ProviderActions { @@encodedName(ArmProviderActionAsync::parameters.body, "application/json", - "parameters" + "requestBody" ); @@encodedName(ArmProviderActionSync::parameters.body, "application/json", - "parameters" + "requestBody" ); diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index 19a4f9029e78..76c8aa606dcc 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -59,7 +59,7 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "The content of the action request", "required": true, @@ -102,7 +102,7 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "The content of the action request", "required": true, @@ -145,7 +145,7 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "The content of the action request", "required": true, @@ -188,7 +188,7 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "The content of the action request", "required": true, @@ -234,7 +234,7 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "The content of the action request", "required": true, @@ -435,14 +435,14 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "Parameters for the create or update operation", "required": true, "schema": { "$ref": "#/definitions/ReportResource" }, - "x-ms-client-name": "properties" + "x-ms-client-name": "requestBody" } ], "responses": { @@ -501,14 +501,14 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "Parameters for the create or update operation", "required": true, "schema": { "$ref": "#/definitions/ReportResourcePatch" }, - "x-ms-client-name": "properties" + "x-ms-client-name": "requestBody" } ], "responses": { @@ -624,7 +624,7 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "NameAvailabilityRequest object.", "required": true, @@ -807,14 +807,14 @@ "pattern": "^[a-zA-Z0-9-_.]+$" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "Parameters for the create or update operation", "required": true, "schema": { "$ref": "#/definitions/EvidenceResource" }, - "x-ms-client-name": "properties" + "x-ms-client-name": "requestBody" } ], "responses": { @@ -919,14 +919,14 @@ "pattern": "^[a-zA-Z0-9-_.]+$" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "Parameters for the query operation", "required": true, "schema": { "$ref": "#/definitions/EvidenceFileDownloadRequest" }, - "x-ms-client-name": "body" + "x-ms-client-name": "requestBody" } ], "responses": { @@ -1169,14 +1169,14 @@ "pattern": "^[a-zA-Z0-9_]*$" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "Parameters for the create or update operation, this is a singleton resource, so please make sure you're using 'default' as the name.", "required": true, "schema": { "$ref": "#/definitions/ScopingConfigurationResource" }, - "x-ms-client-name": "properties" + "x-ms-client-name": "requestBody" } ], "responses": { @@ -1395,7 +1395,7 @@ "pattern": "^[a-zA-Z0-9-_]{1,64}$" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "Parameters for the query operation", "required": true, @@ -1473,14 +1473,14 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "Parameters for synchronize certification record operation", "required": true, "schema": { "$ref": "#/definitions/SyncCertRecordRequest" }, - "x-ms-client-name": "body" + "x-ms-client-name": "requestBody" } ], "responses": { @@ -1721,14 +1721,14 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "Parameters for the create or update operation", "required": true, "schema": { "$ref": "#/definitions/WebhookResource" }, - "x-ms-client-name": "properties" + "x-ms-client-name": "requestBody" } ], "responses": { @@ -1784,7 +1784,7 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "Parameters for the create or update operation", "required": true, @@ -1874,7 +1874,7 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "parameters", + "name": "requestBody", "in": "body", "description": "The content of the action request", "required": true, From 14c7615d4f515fe3544920fb97fd04905114827b Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Fri, 31 May 2024 13:39:13 +0800 Subject: [PATCH 26/33] Revert "use requestBody replace parameters" This reverts commit e4dd975ea2b956032e71424b71cc486b7fc15fde. --- .../resources/EvidenceResource.tsp | 14 ++---- .../resources/ReportResource.tsp | 20 ++------ .../ScopingConfigurationResource.tsp | 6 +-- .../resources/WebhookResource.tsp | 8 ++-- .../routes.tsp | 4 +- .../2024-06-27/appcomplianceautomation.json | 46 +++++++++---------- 6 files changed, 41 insertions(+), 57 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp index 66c3be73debc..9588ddafd516 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp @@ -105,24 +105,18 @@ interface Evidence { ); @@encodedName(Evidence.download::parameters.body, "application/json", - "requestBody" + "parameters" ); -@@clientName(Evidence.download::parameters.body, "requestBody"); -@@OpenAPI.extension(Evidence.download::parameters.body, - "x-ms-client-name", - "requestBody" -); - @@doc(Evidence.download::parameters.body, "Parameters for the query operation"); @@encodedName(Evidence.createOrUpdate::parameters.resource, "application/json", - "requestBody" + "parameters" ); @@OpenAPI.extension(Evidence.createOrUpdate::parameters.resource, "x-ms-client-name", - "requestBody" + "properties" ); -@@clientName(Evidence.createOrUpdate::parameters.resource, "requestBody"); +@@clientName(Evidence.createOrUpdate::parameters.resource, "parameters"); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp index a38ed08201c1..0da41fc45261 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp @@ -160,15 +160,15 @@ interface Report { ); @@encodedName(Report.createOrUpdate::parameters.resource, "application/json", - "requestBody" + "parameters" ); @@OpenAPI.extension(Report.createOrUpdate::parameters.resource, "x-ms-client-name", - "requestBody" + "properties" ); -@@clientName(Report.createOrUpdate::parameters.resource, "requestBody"); +@@clientName(Report.createOrUpdate::parameters.resource, "parameters"); @@doc(Report.update::parameters.properties, "Parameters for the create or update operation" @@ -182,20 +182,10 @@ interface Report { @@encodedName(Report.update::parameters.properties, "application/json", - "requestBody" -); -@@clientName(Report.update::parameters.properties, "requestBody"); -@@OpenAPI.extension(Report.update::parameters.properties, - "x-ms-client-name", - "requestBody" + "parameters" ); @@encodedName(Report.syncCertRecord::parameters.body, "application/json", - "requestBody" -); -@@clientName(Report.syncCertRecord::parameters.body, "requestBody"); -@@OpenAPI.extension(Report.syncCertRecord::parameters.body, - "x-ms-client-name", - "requestBody" + "parameters" ); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp index ccd18ed6e8e8..5e5d8a561893 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp @@ -83,14 +83,14 @@ interface ScopingConfiguration { @@encodedName(ScopingConfiguration.createOrUpdate::parameters.resource, "application/json", - "requestBody" + "parameters" ); @@OpenAPI.extension(ScopingConfiguration.createOrUpdate::parameters.resource, "x-ms-client-name", - "requestBody" + "properties" ); @@clientName(ScopingConfiguration.createOrUpdate::parameters.resource, - "requestBody" + "parameters" ); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp index 4bdaad4e957f..892a8983cad0 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp @@ -104,17 +104,17 @@ interface Webhook { @@encodedName(Webhook.update::parameters.properties, "application/json", - "requestBody" + "parameters" ); @@encodedName(Webhook.createOrUpdate::parameters.resource, "application/json", - "requestBody" + "parameters" ); @@OpenAPI.extension(Webhook.createOrUpdate::parameters.resource, "x-ms-client-name", - "requestBody" + "properties" ); -@@clientName(Webhook.createOrUpdate::parameters.resource, "requestBody"); +@@clientName(Webhook.createOrUpdate::parameters.resource, "parameters"); diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp index 6a669a148395..f5e9912fb6f4 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/routes.tsp @@ -83,9 +83,9 @@ interface ProviderActions { @@encodedName(ArmProviderActionAsync::parameters.body, "application/json", - "requestBody" + "parameters" ); @@encodedName(ArmProviderActionSync::parameters.body, "application/json", - "requestBody" + "parameters" ); diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index 76c8aa606dcc..19a4f9029e78 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -59,7 +59,7 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "The content of the action request", "required": true, @@ -102,7 +102,7 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "The content of the action request", "required": true, @@ -145,7 +145,7 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "The content of the action request", "required": true, @@ -188,7 +188,7 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "The content of the action request", "required": true, @@ -234,7 +234,7 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "The content of the action request", "required": true, @@ -435,14 +435,14 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "Parameters for the create or update operation", "required": true, "schema": { "$ref": "#/definitions/ReportResource" }, - "x-ms-client-name": "requestBody" + "x-ms-client-name": "properties" } ], "responses": { @@ -501,14 +501,14 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "Parameters for the create or update operation", "required": true, "schema": { "$ref": "#/definitions/ReportResourcePatch" }, - "x-ms-client-name": "requestBody" + "x-ms-client-name": "properties" } ], "responses": { @@ -624,7 +624,7 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "NameAvailabilityRequest object.", "required": true, @@ -807,14 +807,14 @@ "pattern": "^[a-zA-Z0-9-_.]+$" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "Parameters for the create or update operation", "required": true, "schema": { "$ref": "#/definitions/EvidenceResource" }, - "x-ms-client-name": "requestBody" + "x-ms-client-name": "properties" } ], "responses": { @@ -919,14 +919,14 @@ "pattern": "^[a-zA-Z0-9-_.]+$" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "Parameters for the query operation", "required": true, "schema": { "$ref": "#/definitions/EvidenceFileDownloadRequest" }, - "x-ms-client-name": "requestBody" + "x-ms-client-name": "body" } ], "responses": { @@ -1169,14 +1169,14 @@ "pattern": "^[a-zA-Z0-9_]*$" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "Parameters for the create or update operation, this is a singleton resource, so please make sure you're using 'default' as the name.", "required": true, "schema": { "$ref": "#/definitions/ScopingConfigurationResource" }, - "x-ms-client-name": "requestBody" + "x-ms-client-name": "properties" } ], "responses": { @@ -1395,7 +1395,7 @@ "pattern": "^[a-zA-Z0-9-_]{1,64}$" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "Parameters for the query operation", "required": true, @@ -1473,14 +1473,14 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "Parameters for synchronize certification record operation", "required": true, "schema": { "$ref": "#/definitions/SyncCertRecordRequest" }, - "x-ms-client-name": "requestBody" + "x-ms-client-name": "body" } ], "responses": { @@ -1721,14 +1721,14 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "Parameters for the create or update operation", "required": true, "schema": { "$ref": "#/definitions/WebhookResource" }, - "x-ms-client-name": "requestBody" + "x-ms-client-name": "properties" } ], "responses": { @@ -1784,7 +1784,7 @@ "pattern": "^[-a-zA-Z0-9_]{1,50}$" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "Parameters for the create or update operation", "required": true, @@ -1874,7 +1874,7 @@ "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { - "name": "requestBody", + "name": "parameters", "in": "body", "description": "The content of the action request", "required": true, From b5616b10a889fb77dfeff07fdee6df3fcb2a3848 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Fri, 31 May 2024 13:44:24 +0800 Subject: [PATCH 27/33] tsp format --- .../resources/SnapshotResource.tsp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp index ef206fcd61d2..9d80ebd87a0c 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp @@ -74,6 +74,4 @@ interface Snapshot { >; } -@@doc(Snapshot.download::parameters.body, - "Parameters for the query operation" -); +@@doc(Snapshot.download::parameters.body, "Parameters for the query operation"); From e7b523b565d2cd561453e081da6f40cd17b42e9a Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Fri, 31 May 2024 14:01:02 +0800 Subject: [PATCH 28/33] remove dotnet from tspconfig.yaml and add azure-sdk-for-net-track2 in readme --- .../AppComplianceAutomation.Management/tspconfig.yaml | 6 ------ .../appcomplianceautomation/resource-manager/readme.md | 1 + 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml b/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml index f2774bb66b56..96ec0f7b5c29 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml @@ -17,12 +17,6 @@ options: flavor: azure package-dir: "azure-mgmt-appcomplianceautomation" package-name: "{package-dir}" - "@azure-tools/typespec-csharp": - flavor: azure - package-dir: "Microsoft.AppComplianceAutomation" - clear-output-folder: true - model-namespace: false - namespace: "{package-dir}" "@azure-tools/typespec-ts": flavor: azure package-dir: "arm-appcomplianceautomation" diff --git a/specification/appcomplianceautomation/resource-manager/readme.md b/specification/appcomplianceautomation/resource-manager/readme.md index f35c9c37e311..c157270c0b4a 100644 --- a/specification/appcomplianceautomation/resource-manager/readme.md +++ b/specification/appcomplianceautomation/resource-manager/readme.md @@ -63,6 +63,7 @@ swagger-to-sdk: - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js + - repo: azure-sdk-for-net-track2 - repo: azure-resource-manager-schemas - repo: azure-cli-extensions ``` From 999f591bc0f26397ab68e27d3449976a2177de9d Mon Sep 17 00:00:00 2001 From: Alancere <804873052@qq.com> Date: Fri, 31 May 2024 14:45:34 +0800 Subject: [PATCH 29/33] add sdk-suppressions.yaml --- .../resource-manager/sdk-suppressions.yaml | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 specification/appcomplianceautomation/resource-manager/sdk-suppressions.yaml diff --git a/specification/appcomplianceautomation/resource-manager/sdk-suppressions.yaml b/specification/appcomplianceautomation/resource-manager/sdk-suppressions.yaml new file mode 100644 index 000000000000..d8de1c66f0bf --- /dev/null +++ b/specification/appcomplianceautomation/resource-manager/sdk-suppressions.yaml @@ -0,0 +1,35 @@ +suppressions: + azure-sdk-for-go: + - package: sdk/resourcemanager/appcomplianceautomation/armappcomplianceautomation + breaking-changes: + - Enum `AssessmentSeverity` has been removed + - Enum `CategoryType` has been removed + - Enum `ComplianceState` has been removed + - Enum `ControlFamilyType` has been removed + - Enum `ControlType` has been removed + - Enum `IsPass` has been removed + - Field `Assessments`, `ControlShortName`, `ControlType` of struct `Control` has been removed + - Field `CategoryType` of struct `Category` has been removed + - Field `ComplianceState`, `ControlType`, `PolicyDescription`, `PolicyDisplayName`, `PolicyID`, `ResourceGroup`, `StatusChangeDate`, `SubscriptionID` of struct `ComplianceReportItem` has been removed + - Field `FamilyName`, `FamilyStatus`, `FamilyType` of struct `ControlFamily` has been removed + - Field `ID` of struct `SnapshotProperties` has been removed + - Field `ID`, `ReportName` of struct `ReportProperties` has been removed + - Field `ReportResourceList` of struct `ReportsClientListResponse` has been removed + - Field `ResourceName`, `Tags` of struct `ResourceMetadata` has been removed + - Field `SnapshotResourceList` of struct `SnapshotsClientListResponse` has been removed + - Function `*ClientFactory.NewSnapshotClient` has been removed + - Function `*ReportClient.BeginCreateOrUpdate` has been removed + - Function `*ReportClient.BeginDelete` has been removed + - Function `*ReportClient.BeginUpdate` has been removed + - Function `*ReportClient.Get` has been removed + - Function `*SnapshotClient.BeginDownload` has been removed + - Function `*SnapshotClient.Get` has been removed + - Function `NewSnapshotClient` has been removed + - Struct `AssessmentResource` has been removed + - Struct `Assessment` has been removed + - Struct `ReportResourceList` has been removed + - Struct `SnapshotResourceList` has been removed + - Type of `ReportResourcePatch.Properties` has been changed from `*ReportProperties` to `*ReportPatchProperties` + - "`CategoryStatusHealthy`, `CategoryStatusUnhealthy` from enum `CategoryStatus` has been removed" + - "`ControlFamilyStatusHealthy`, `ControlFamilyStatusUnhealthy` from enum `ControlFamilyStatus` has been removed" + - "`ResourceStatusNotApplicable` from enum `ResourceStatus` has been removed" \ No newline at end of file From 92ae5288817d9f1a79db2eb149bb32f282bd1f2d Mon Sep 17 00:00:00 2001 From: Weidong Xu Date: Fri, 31 May 2024 14:58:46 +0800 Subject: [PATCH 30/33] Update tspconfig.yaml --- .../AppComplianceAutomation.Management/tspconfig.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml b/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml index 96ec0f7b5c29..f46bc4f692b7 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml @@ -23,6 +23,11 @@ options: packageDetails: name: "@azure/arm-appcomplianceautomation" examples-directory: "{project-root}/examples" + "@azure-tools/typespec-java": + flavor: azure + package-dir: "azure-resourcemanager-appcomplianceautomation" + namespace: "com.azure.resourcemanager.appcomplianceautomation" + service-name: "App Compliance Automation" linter: extends: - "@azure-tools/typespec-azure-rulesets/resource-manager" From dcc0afba4532e939bcaa27d36eebafb94fe17b17 Mon Sep 17 00:00:00 2001 From: Weidong Xu Date: Fri, 31 May 2024 15:12:17 +0800 Subject: [PATCH 31/33] Update tspconfig.yaml --- .../AppComplianceAutomation.Management/tspconfig.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml b/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml index f46bc4f692b7..f7b8f046327c 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/tspconfig.yaml @@ -28,6 +28,7 @@ options: package-dir: "azure-resourcemanager-appcomplianceautomation" namespace: "com.azure.resourcemanager.appcomplianceautomation" service-name: "App Compliance Automation" + examples-directory: "examples" linter: extends: - "@azure-tools/typespec-azure-rulesets/resource-manager" From a8d266b21e79dc128199bfa0d2a2c83a3b6e3293 Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Mon, 3 Jun 2024 13:03:48 +0800 Subject: [PATCH 32/33] rename operationid --- ...date.json => Evidence_CreateOrUpdate.json} | 4 +- .../examples/2024-06-27/Evidence_Delete.json} | 4 +- .../2024-06-27/Evidence_Download.json} | 4 +- .../examples/2024-06-27/Evidence_Get.json} | 4 +- ...Report.json => Evidence_ListByReport.json} | 4 +- ...json => Report_CheckNameAvailability.json} | 2 +- .../2024-06-27/Report_CreateOrUpdate.json | 2 +- .../examples/2024-06-27/Report_Delete.json | 2 +- .../examples/2024-06-27/Report_Fix.json | 2 +- .../examples/2024-06-27/Report_Get.json | 2 +- .../Report_GetCollectionCount.json} | 2 +- .../2024-06-27/Report_GetOverviewStatus.json} | 2 +- .../examples/2024-06-27/Report_List.json} | 4 +- ...ort_Evidence_Check_Name_Availability.json} | 4 +- ...ort_Snapshot_Check_Name_Availability.json} | 4 +- ...port_Webhook_Check_Name_Availability.json} | 4 +- .../2024-06-27/Report_SyncCertRecord.json} | 4 +- .../examples/2024-06-27/Report_Update.json | 2 +- ...st.json => ScopingConfiguration_List.json} | 4 +- ...nload_Compliance_Detailed_Pdf_Report.json} | 2 +- ...pshot_Download_Compliance_Pdf_Report.json} | 2 +- ..._Snapshot_Download_Compliance_Report.json} | 2 +- ...load_Snapshot_Download_Resource_List.json} | 2 +- .../{Snapshots_Get.json => Snapshot_Get.json} | 2 +- ...Snapshots_List.json => Snapshot_List.json} | 4 +- .../2024-06-27/Webhook_CreateOrUpdate.json} | 2 +- ...bhooks_Delete.json => Webhook_Delete.json} | 2 +- .../examples/2024-06-27/Webhook_Get.json} | 2 +- .../examples/2024-06-27/Webhook_List.json} | 4 +- ...bhooks_Update.json => Webhook_Update.json} | 2 +- .../resources/EvidenceResource.tsp | 10 +- .../resources/ReportResource.tsp | 16 +-- .../ScopingConfigurationResource.tsp | 2 +- .../resources/SnapshotResource.tsp | 6 +- .../resources/WebhookResource.tsp | 10 +- .../2024-06-27/appcomplianceautomation.json | 126 +++++++++--------- ...date.json => Evidence_CreateOrUpdate.json} | 4 +- .../2024-06-27/examples/Evidence_Delete.json} | 4 +- .../examples/Evidence_Download.json} | 4 +- .../2024-06-27/examples/Evidence_Get.json} | 4 +- ...Report.json => Evidence_ListByReport.json} | 4 +- ...json => Report_CheckNameAvailability.json} | 2 +- .../examples/Report_CreateOrUpdate.json | 2 +- .../2024-06-27/examples/Report_Delete.json | 2 +- .../2024-06-27/examples/Report_Fix.json | 2 +- .../2024-06-27/examples/Report_Get.json | 2 +- .../examples/Report_GetCollectionCount.json} | 2 +- .../examples/Report_GetOverviewStatus.json} | 2 +- .../2024-06-27/examples/Report_List.json} | 4 +- ...ort_Evidence_Check_Name_Availability.json} | 4 +- ...ort_Snapshot_Check_Name_Availability.json} | 4 +- ...port_Webhook_Check_Name_Availability.json} | 4 +- .../examples/Report_SyncCertRecord.json} | 4 +- .../2024-06-27/examples/Report_Update.json | 2 +- ...st.json => ScopingConfiguration_List.json} | 4 +- ...nload_Compliance_Detailed_Pdf_Report.json} | 2 +- ...pshot_Download_Compliance_Pdf_Report.json} | 2 +- ..._Snapshot_Download_Compliance_Report.json} | 2 +- ...load_Snapshot_Download_Resource_List.json} | 2 +- .../{Snapshots_Get.json => Snapshot_Get.json} | 2 +- ...Snapshots_List.json => Snapshot_List.json} | 4 +- .../examples/Webhook_CreateOrUpdate.json} | 2 +- ...bhooks_Delete.json => Webhook_Delete.json} | 2 +- .../2024-06-27/examples/Webhook_Get.json} | 2 +- .../2024-06-27/examples/Webhook_List.json} | 4 +- ...bhooks_Update.json => Webhook_Update.json} | 2 +- 66 files changed, 171 insertions(+), 171 deletions(-) rename specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/{Evidences_CreateOrUpdate.json => Evidence_CreateOrUpdate.json} (96%) rename specification/appcomplianceautomation/{resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Delete.json => AppComplianceAutomation.Management/examples/2024-06-27/Evidence_Delete.json} (72%) rename specification/appcomplianceautomation/{resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Download.json => AppComplianceAutomation.Management/examples/2024-06-27/Evidence_Download.json} (85%) rename specification/appcomplianceautomation/{resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Get.json => AppComplianceAutomation.Management/examples/2024-06-27/Evidence_Get.json} (94%) rename specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/{Evidences_ListByReport.json => Evidence_ListByReport.json} (93%) rename specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/{Reports_CheckNameAvailability.json => Report_CheckNameAvailability.json} (90%) rename specification/appcomplianceautomation/{resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetCollectionCount.json => AppComplianceAutomation.Management/examples/2024-06-27/Report_GetCollectionCount.json} (88%) rename specification/appcomplianceautomation/{resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetOverviewStatus.json => AppComplianceAutomation.Management/examples/2024-06-27/Report_GetOverviewStatus.json} (93%) rename specification/appcomplianceautomation/{resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json => AppComplianceAutomation.Management/examples/2024-06-27/Report_List.json} (98%) rename specification/appcomplianceautomation/{resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json => AppComplianceAutomation.Management/examples/2024-06-27/Report_NestedResourceCheckNameAvailability_Report_Evidence_Check_Name_Availability.json} (78%) rename specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/{Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json => Report_NestedResourceCheckNameAvailability_Report_Snapshot_Check_Name_Availability.json} (78%) rename specification/appcomplianceautomation/{resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json => AppComplianceAutomation.Management/examples/2024-06-27/Report_NestedResourceCheckNameAvailability_Report_Webhook_Check_Name_Availability.json} (78%) rename specification/appcomplianceautomation/{resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_SyncCertRecord.json => AppComplianceAutomation.Management/examples/2024-06-27/Report_SyncCertRecord.json} (93%) rename specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/{ScopingConfigurations_List.json => ScopingConfiguration_List.json} (94%) rename specification/appcomplianceautomation/{resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json => AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json} (95%) rename specification/appcomplianceautomation/{resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json => AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Download_Snapshot_Download_Compliance_Pdf_Report.json} (95%) rename specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/{Snapshots_Download_Snapshot_Download_Compliance_Report.json => Snapshot_Download_Snapshot_Download_Compliance_Report.json} (98%) rename specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/{Snapshots_Download_Snapshot_Download_Resource_List.json => Snapshot_Download_Snapshot_Download_Resource_List.json} (96%) rename specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/{Snapshots_Get.json => Snapshot_Get.json} (99%) rename specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/{Snapshots_List.json => Snapshot_List.json} (99%) rename specification/appcomplianceautomation/{resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_CreateOrUpdate.json => AppComplianceAutomation.Management/examples/2024-06-27/Webhook_CreateOrUpdate.json} (98%) rename specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/{Webhooks_Delete.json => Webhook_Delete.json} (85%) rename specification/appcomplianceautomation/{resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Get.json => AppComplianceAutomation.Management/examples/2024-06-27/Webhook_Get.json} (97%) rename specification/appcomplianceautomation/{resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_List.json => AppComplianceAutomation.Management/examples/2024-06-27/Webhook_List.json} (96%) rename specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/{Webhooks_Update.json => Webhook_Update.json} (97%) rename specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/{Evidences_CreateOrUpdate.json => Evidence_CreateOrUpdate.json} (96%) rename specification/appcomplianceautomation/{AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Delete.json => resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_Delete.json} (72%) rename specification/appcomplianceautomation/{AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Download.json => resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_Download.json} (85%) rename specification/appcomplianceautomation/{AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Get.json => resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_Get.json} (94%) rename specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/{Evidences_ListByReport.json => Evidence_ListByReport.json} (93%) rename specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/{Reports_CheckNameAvailability.json => Report_CheckNameAvailability.json} (90%) rename specification/appcomplianceautomation/{AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetCollectionCount.json => resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_GetCollectionCount.json} (88%) rename specification/appcomplianceautomation/{AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetOverviewStatus.json => resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_GetOverviewStatus.json} (93%) rename specification/appcomplianceautomation/{AppComplianceAutomation.Management/examples/2024-06-27/Reports_List.json => resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_List.json} (98%) rename specification/appcomplianceautomation/{AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json => resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_NestedResourceCheckNameAvailability_Report_Evidence_Check_Name_Availability.json} (78%) rename specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/{Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json => Report_NestedResourceCheckNameAvailability_Report_Snapshot_Check_Name_Availability.json} (78%) rename specification/appcomplianceautomation/{AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json => resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_NestedResourceCheckNameAvailability_Report_Webhook_Check_Name_Availability.json} (78%) rename specification/appcomplianceautomation/{AppComplianceAutomation.Management/examples/2024-06-27/Reports_SyncCertRecord.json => resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_SyncCertRecord.json} (93%) rename specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/{ScopingConfigurations_List.json => ScopingConfiguration_List.json} (94%) rename specification/appcomplianceautomation/{AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json => resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json} (95%) rename specification/appcomplianceautomation/{AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json => resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Download_Snapshot_Download_Compliance_Pdf_Report.json} (95%) rename specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/{Snapshots_Download_Snapshot_Download_Compliance_Report.json => Snapshot_Download_Snapshot_Download_Compliance_Report.json} (98%) rename specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/{Snapshots_Download_Snapshot_Download_Resource_List.json => Snapshot_Download_Snapshot_Download_Resource_List.json} (96%) rename specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/{Snapshots_Get.json => Snapshot_Get.json} (99%) rename specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/{Snapshots_List.json => Snapshot_List.json} (99%) rename specification/appcomplianceautomation/{AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_CreateOrUpdate.json => resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_CreateOrUpdate.json} (98%) rename specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/{Webhooks_Delete.json => Webhook_Delete.json} (85%) rename specification/appcomplianceautomation/{AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Get.json => resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_Get.json} (97%) rename specification/appcomplianceautomation/{AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_List.json => resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_List.json} (96%) rename specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/{Webhooks_Update.json => Webhook_Update.json} (97%) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_CreateOrUpdate.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_CreateOrUpdate.json similarity index 96% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_CreateOrUpdate.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_CreateOrUpdate.json index 41184da1447a..af439f4648bc 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_CreateOrUpdate.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_CreateOrUpdate.json @@ -60,6 +60,6 @@ } } }, - "operationId": "Evidences_CreateOrUpdate", - "title": "Evidences_CreateOrUpdate" + "operationId": "Evidence_CreateOrUpdate", + "title": "Evidence_CreateOrUpdate" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Delete.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_Delete.json similarity index 72% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Delete.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_Delete.json index 59a9ab820681..890214acc94b 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Delete.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_Delete.json @@ -8,6 +8,6 @@ "200": {}, "204": {} }, - "operationId": "Evidences_Delete", - "title": "Evidences_Delete" + "operationId": "Evidence_Delete", + "title": "Evidence_Delete" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Download.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_Download.json similarity index 85% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Download.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_Download.json index cbbf140454e5..7827cea38d1f 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Download.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_Download.json @@ -17,6 +17,6 @@ } } }, - "operationId": "Evidences_Download", - "title": "Evidences_Download" + "operationId": "Evidence_Download", + "title": "Evidence_Download" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Get.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_Get.json similarity index 94% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Get.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_Get.json index 510d8971ae53..3ce86f20bad4 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_Get.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_Get.json @@ -29,6 +29,6 @@ } } }, - "operationId": "Evidences_Get", - "title": "Evidences_Get" + "operationId": "Evidence_Get", + "title": "Evidence_Get" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_ListByReport.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_ListByReport.json similarity index 93% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_ListByReport.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_ListByReport.json index 260d1be6e40f..b93a76ee8334 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_ListByReport.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidence_ListByReport.json @@ -32,6 +32,6 @@ } } }, - "operationId": "Evidences_ListByReport", - "title": "Evidences_ListByReport" + "operationId": "Evidence_ListByReport", + "title": "Evidence_ListByReport" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_CheckNameAvailability.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_CheckNameAvailability.json similarity index 90% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_CheckNameAvailability.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_CheckNameAvailability.json index e6770681424e..bcd762897e0a 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_CheckNameAvailability.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_CheckNameAvailability.json @@ -1,6 +1,6 @@ { "operationId": "ProviderActions_CheckNameAvailability", - "title": "Reports_CheckNameAvailability", + "title": "Report_CheckNameAvailability", "parameters": { "api-version": "2024-06-27", "parameters": { diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_CreateOrUpdate.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_CreateOrUpdate.json index f918df4dcc81..2efea20388ba 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_CreateOrUpdate.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_CreateOrUpdate.json @@ -144,6 +144,6 @@ } } }, - "operationId": "Reports_CreateOrUpdate", + "operationId": "Report_CreateOrUpdate", "title": "Report_CreateOrUpdate" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Delete.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Delete.json index c253f72017a6..80a2ac5a5f87 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Delete.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Delete.json @@ -12,6 +12,6 @@ }, "204": {} }, - "operationId": "Reports_Delete", + "operationId": "Report_Delete", "title": "Report_Delete" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Fix.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Fix.json index 26ff98f180aa..bcc813dce1b6 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Fix.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Fix.json @@ -17,6 +17,6 @@ } } }, - "operationId": "Reports_Fix", + "operationId": "Report_Fix", "title": "Report_Fix" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Get.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Get.json index 9141822657c9..968fefe131b4 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Get.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Get.json @@ -75,6 +75,6 @@ } } }, - "operationId": "Reports_Get", + "operationId": "Report_Get", "title": "Report_Get" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetCollectionCount.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_GetCollectionCount.json similarity index 88% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetCollectionCount.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_GetCollectionCount.json index 32848a991284..5bc1b448f3d4 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetCollectionCount.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_GetCollectionCount.json @@ -1,6 +1,6 @@ { "operationId": "ProviderActions_GetCollectionCount", - "title": "Reports_GetCollectionCount", + "title": "Report_GetCollectionCount", "parameters": { "api-version": "2024-06-27", "$filter": "Name eq 'Milk'", diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetOverviewStatus.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_GetOverviewStatus.json similarity index 93% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetOverviewStatus.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_GetOverviewStatus.json index 8e81cec2c8bb..1ddbfccb5cb5 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_GetOverviewStatus.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_GetOverviewStatus.json @@ -1,6 +1,6 @@ { "operationId": "ProviderActions_GetOverviewStatus", - "title": "Reports_GetOverviewStatus", + "title": "Report_GetOverviewStatus", "parameters": { "api-version": "2024-06-27", "parameters": { diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_List.json similarity index 98% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_List.json index 66635cccc4cc..0821ff0492b8 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_List.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_List.json @@ -83,6 +83,6 @@ } } }, - "operationId": "Reports_List", - "title": "Reports_List" + "operationId": "Report_List", + "title": "Report_List" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_NestedResourceCheckNameAvailability_Report_Evidence_Check_Name_Availability.json similarity index 78% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_NestedResourceCheckNameAvailability_Report_Evidence_Check_Name_Availability.json index 18cef3b72ecb..b15d2c857cb6 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_NestedResourceCheckNameAvailability_Report_Evidence_Check_Name_Availability.json @@ -16,6 +16,6 @@ } } }, - "operationId": "Reports_NestedResourceCheckNameAvailability", - "title": "Reports_EvidenceCheckNameAvailability" + "operationId": "Report_NestedResourceCheckNameAvailability", + "title": "Report_EvidenceCheckNameAvailability" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_NestedResourceCheckNameAvailability_Report_Snapshot_Check_Name_Availability.json similarity index 78% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_NestedResourceCheckNameAvailability_Report_Snapshot_Check_Name_Availability.json index 5b1790224b7b..4064467ccddc 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_NestedResourceCheckNameAvailability_Report_Snapshot_Check_Name_Availability.json @@ -16,6 +16,6 @@ } } }, - "operationId": "Reports_NestedResourceCheckNameAvailability", - "title": "Reports_SnapshotCheckNameAvailability" + "operationId": "Report_NestedResourceCheckNameAvailability", + "title": "Report_SnapshotCheckNameAvailability" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_NestedResourceCheckNameAvailability_Report_Webhook_Check_Name_Availability.json similarity index 78% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_NestedResourceCheckNameAvailability_Report_Webhook_Check_Name_Availability.json index aa1e3446fb72..388d47f9a2c2 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_NestedResourceCheckNameAvailability_Report_Webhook_Check_Name_Availability.json @@ -16,6 +16,6 @@ } } }, - "operationId": "Reports_NestedResourceCheckNameAvailability", - "title": "Reports_WebhookCheckNameAvailability" + "operationId": "Report_NestedResourceCheckNameAvailability", + "title": "Report_WebhookCheckNameAvailability" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_SyncCertRecord.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_SyncCertRecord.json similarity index 93% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_SyncCertRecord.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_SyncCertRecord.json index 2dc22b5ca72c..00f3a43324da 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_SyncCertRecord.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_SyncCertRecord.json @@ -34,6 +34,6 @@ } } }, - "operationId": "Reports_SyncCertRecord", - "title": "Reports_SyncCertRecord" + "operationId": "Report_SyncCertRecord", + "title": "Report_SyncCertRecord" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Update.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Update.json index 611d8b5ebfa8..fba98d1d3712 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Update.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_Update.json @@ -104,6 +104,6 @@ } } }, - "operationId": "Reports_Update", + "operationId": "Report_Update", "title": "Report_Update" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfigurations_List.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_List.json similarity index 94% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfigurations_List.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_List.json index 734dd92af311..d29f4275ceb8 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfigurations_List.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingConfiguration_List.json @@ -42,6 +42,6 @@ } } }, - "operationId": "ScopingConfigurations_List", - "title": "ScopingConfigurations_List" + "operationId": "ScopingConfiguration_List", + "title": "ScopingConfiguration_List" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json similarity index 95% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json index d4b213c0bdee..d84be3fd0ea1 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json @@ -24,6 +24,6 @@ } } }, - "operationId": "Snapshots_Download", + "operationId": "Snapshot_Download", "title": "Snapshot_Download_ComplianceDetailedPdfReport" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Download_Snapshot_Download_Compliance_Pdf_Report.json similarity index 95% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Download_Snapshot_Download_Compliance_Pdf_Report.json index e016ce194119..fab4b64e88d1 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Download_Snapshot_Download_Compliance_Pdf_Report.json @@ -24,6 +24,6 @@ } } }, - "operationId": "Snapshots_Download", + "operationId": "Snapshot_Download", "title": "Snapshot_Download_CompliancePdfReport" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Report.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Download_Snapshot_Download_Compliance_Report.json similarity index 98% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Report.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Download_Snapshot_Download_Compliance_Report.json index d87ae1b85dc9..e7e5d3d67aed 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Report.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Download_Snapshot_Download_Compliance_Report.json @@ -37,6 +37,6 @@ } } }, - "operationId": "Snapshots_Download", + "operationId": "Snapshot_Download", "title": "Snapshot_Download_ComplianceReport" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Resource_List.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Download_Snapshot_Download_Resource_List.json similarity index 96% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Resource_List.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Download_Snapshot_Download_Resource_List.json index 34a29b24cf3e..603716a5154a 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Resource_List.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Download_Snapshot_Download_Resource_List.json @@ -29,6 +29,6 @@ } } }, - "operationId": "Snapshots_Download", + "operationId": "Snapshot_Download", "title": "Snapshot_Download_ResourceList" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Get.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Get.json similarity index 99% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Get.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Get.json index e0ef0b724d5d..9637ea243640 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Get.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_Get.json @@ -179,6 +179,6 @@ } } }, - "operationId": "Snapshots_Get", + "operationId": "Snapshot_Get", "title": "Snapshot_Get" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_List.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_List.json similarity index 99% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_List.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_List.json index 7274099cf5ab..592c4f1160b5 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_List.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshot_List.json @@ -189,6 +189,6 @@ } } }, - "operationId": "Snapshots_List", - "title": "Snapshots_List" + "operationId": "Snapshot_List", + "title": "Snapshot_List" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_CreateOrUpdate.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_CreateOrUpdate.json similarity index 98% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_CreateOrUpdate.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_CreateOrUpdate.json index 379f63d3f3fd..02279408de64 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_CreateOrUpdate.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_CreateOrUpdate.json @@ -80,6 +80,6 @@ } } }, - "operationId": "Webhooks_CreateOrUpdate", + "operationId": "Webhook_CreateOrUpdate", "title": "Webhook_CreateOrUpdate" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Delete.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_Delete.json similarity index 85% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Delete.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_Delete.json index fd17dfb9e1d3..681e90bfaf99 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Delete.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_Delete.json @@ -8,6 +8,6 @@ "200": {}, "204": {} }, - "operationId": "Webhooks_Delete", + "operationId": "Webhook_Delete", "title": "Webhook_Delete" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Get.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_Get.json similarity index 97% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Get.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_Get.json index ea6f0c6636c9..8433044df3b6 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Get.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_Get.json @@ -36,6 +36,6 @@ } } }, - "operationId": "Webhooks_Get", + "operationId": "Webhook_Get", "title": "Webhook_Get" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_List.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_List.json similarity index 96% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_List.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_List.json index 74019ce2f47f..5218b564374a 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_List.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_List.json @@ -42,6 +42,6 @@ } } }, - "operationId": "Webhooks_List", - "title": "Webhooks_List" + "operationId": "Webhook_List", + "title": "Webhook_List" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Update.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_Update.json similarity index 97% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Update.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_Update.json index 4fe5b96af53e..d30eb32aadbe 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Update.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhook_Update.json @@ -50,6 +50,6 @@ } } }, - "operationId": "Webhooks_Update", + "operationId": "Webhook_Update", "title": "Webhook_Update" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp index 9588ddafd516..059fafb96781 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/EvidenceResource.tsp @@ -47,7 +47,7 @@ interface Evidence { * Get the evidence metadata */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Evidences_Get") + @operationId("Evidence_Get") get is ArmResourceRead< EvidenceResource, { @@ -59,7 +59,7 @@ interface Evidence { * Create or Update an evidence a specified report */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Evidences_CreateOrUpdate") + @operationId("Evidence_CreateOrUpdate") createOrUpdate is ArmResourceCreateOrReplaceSync< EvidenceResource, { @@ -72,14 +72,14 @@ interface Evidence { * Delete an existent evidence from a specified report */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Evidences_Delete") + @operationId("Evidence_Delete") delete is ArmResourceDeleteSync; /** * Returns a paginated list of evidences for a specified report. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Evidences_ListByReport") + @operationId("Evidence_ListByReport") listByReport is ArmResourceListByParent< EvidenceResource, { @@ -92,7 +92,7 @@ interface Evidence { * Download evidence file. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Evidences_Download") + @operationId("Evidence_Download") download is ArmResourceActionSync< EvidenceResource, EvidenceFileDownloadRequest, diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp index 0da41fc45261..80f5aaf96344 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp @@ -47,14 +47,14 @@ interface Report { * Get the AppComplianceAutomation report and its properties. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Reports_Get") + @operationId("Report_Get") get is ArmResourceRead; /** * Create a new AppComplianceAutomation report or update an exiting AppComplianceAutomation report. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Reports_CreateOrUpdate") + @operationId("Report_CreateOrUpdate") createOrUpdate is ArmResourceCreateOrReplaceAsync< ReportResource, Azure.ResourceManager.Foundations.BaseParameters @@ -65,7 +65,7 @@ interface Report { */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" @parameterVisibility - @operationId("Reports_Update") + @operationId("Report_Update") update is ArmCustomPatchAsync< ReportResource, ReportResourcePatch, @@ -76,7 +76,7 @@ interface Report { * Delete an AppComplianceAutomation report. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Reports_Delete") + @operationId("Report_Delete") delete is ArmResourceDeleteWithoutOkAsync< ReportResource, Azure.ResourceManager.Foundations.BaseParameters @@ -86,7 +86,7 @@ interface Report { * Get the AppComplianceAutomation report list for the tenant. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Reports_List") + @operationId("Report_List") list is ArmResourceListByParent< ReportResource, { @@ -99,7 +99,7 @@ interface Report { * Synchronize attestation record from app compliance. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Reports_SyncCertRecord") + @operationId("Report_SyncCertRecord") syncCertRecord is ArmResourceActionAsync< ReportResource, SyncCertRecordRequest, @@ -111,7 +111,7 @@ interface Report { * Checks the report's nested resource name availability, e.g: Webhooks, Evidences, Snapshots. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Reports_NestedResourceCheckNameAvailability") + @operationId("Report_NestedResourceCheckNameAvailability") checkNameAvailability is ArmResourceActionSync< ReportResource, Azure.ResourceManager.Foundations.CheckNameAvailabilityRequest, @@ -122,7 +122,7 @@ interface Report { * Fix the AppComplianceAutomation report error. e.g: App Compliance Automation Tool service unregistered, automation removed. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Reports_Fix") + @operationId("Report_Fix") fix is ArmResourceActionAsync< ReportResource, void, diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp index 5e5d8a561893..518cd41308a5 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ScopingConfigurationResource.tsp @@ -73,7 +73,7 @@ interface ScopingConfiguration { * Returns a list format of the singleton scopingConfiguration for a specified report. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("ScopingConfigurations_List") + @operationId("ScopingConfiguration_List") list is ArmResourceListByParent; } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp index 9d80ebd87a0c..9fafd95080e9 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/SnapshotResource.tsp @@ -45,14 +45,14 @@ interface Snapshot { * Get the AppComplianceAutomation snapshot and its properties. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Snapshots_Get") + @operationId("Snapshot_Get") get is ArmResourceRead; /** * Get the AppComplianceAutomation snapshot list. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Snapshots_List") + @operationId("Snapshot_List") list is ArmResourceListByParent< SnapshotResource, { @@ -65,7 +65,7 @@ interface Snapshot { * Download compliance needs from snapshot, like: Compliance Report, Resource List. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Snapshots_Download") + @operationId("Snapshot_Download") download is ArmResourceActionAsync< SnapshotResource, SnapshotDownloadRequest, diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp index 892a8983cad0..40e57c6edeaa 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/WebhookResource.tsp @@ -51,14 +51,14 @@ interface Webhook { * Get the AppComplianceAutomation webhook and its properties. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Webhooks_Get") + @operationId("Webhook_Get") get is ArmResourceRead; /** * Create a new AppComplianceAutomation webhook or update an exiting AppComplianceAutomation webhook. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Webhooks_CreateOrUpdate") + @operationId("Webhook_CreateOrUpdate") createOrUpdate is ArmResourceCreateOrReplaceSync; /** @@ -66,7 +66,7 @@ interface Webhook { */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" @parameterVisibility - @operationId("Webhooks_Update") + @operationId("Webhook_Update") update is ArmCustomPatchSync< WebhookResource, WebhookResourcePatch, @@ -78,14 +78,14 @@ interface Webhook { * Delete an AppComplianceAutomation webhook. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Webhooks_Delete") + @operationId("Webhook_Delete") delete is ArmResourceDeleteSync; /** * Get the AppComplianceAutomation webhook list. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("Webhooks_List") + @operationId("Webhook_List") list is ArmResourceListByParent< WebhookResource, { diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index 19a4f9029e78..5a5636ec922e 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -84,8 +84,8 @@ } }, "x-ms-examples": { - "Reports_CheckNameAvailability": { - "$ref": "./examples/Reports_CheckNameAvailability.json" + "Report_CheckNameAvailability": { + "$ref": "./examples/Report_CheckNameAvailability.json" } } } @@ -127,8 +127,8 @@ } }, "x-ms-examples": { - "Reports_GetCollectionCount": { - "$ref": "./examples/Reports_GetCollectionCount.json" + "Report_GetCollectionCount": { + "$ref": "./examples/Report_GetCollectionCount.json" } } } @@ -170,8 +170,8 @@ } }, "x-ms-examples": { - "Reports_GetOverviewStatus": { - "$ref": "./examples/Reports_GetOverviewStatus.json" + "Report_GetOverviewStatus": { + "$ref": "./examples/Report_GetOverviewStatus.json" } } } @@ -321,7 +321,7 @@ }, "/providers/Microsoft.AppComplianceAutomation/reports": { "get": { - "operationId": "Reports_List", + "operationId": "Report_List", "tags": [ "AppComplianceAutomation" ], @@ -367,8 +367,8 @@ } }, "x-ms-examples": { - "Reports_List": { - "$ref": "./examples/Reports_List.json" + "Report_List": { + "$ref": "./examples/Report_List.json" } }, "x-ms-pageable": { @@ -378,7 +378,7 @@ }, "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}": { "get": { - "operationId": "Reports_Get", + "operationId": "Report_Get", "tags": [ "AppComplianceAutomation" ], @@ -417,7 +417,7 @@ } }, "put": { - "operationId": "Reports_CreateOrUpdate", + "operationId": "Report_CreateOrUpdate", "tags": [ "AppComplianceAutomation" ], @@ -483,7 +483,7 @@ "x-ms-long-running-operation": true }, "patch": { - "operationId": "Reports_Update", + "operationId": "Report_Update", "tags": [ "AppComplianceAutomation" ], @@ -550,7 +550,7 @@ "x-ms-long-running-operation": true }, "delete": { - "operationId": "Reports_Delete", + "operationId": "Report_Delete", "tags": [ "AppComplianceAutomation" ], @@ -606,7 +606,7 @@ }, "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/checkNameAvailability": { "post": { - "operationId": "Reports_NestedResourceCheckNameAvailability", + "operationId": "Report_NestedResourceCheckNameAvailability", "tags": [ "AppComplianceAutomation" ], @@ -649,21 +649,21 @@ } }, "x-ms-examples": { - "Reports_EvidenceCheckNameAvailability": { - "$ref": "./examples/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json" + "Report_EvidenceCheckNameAvailability": { + "$ref": "./examples/Report_NestedResourceCheckNameAvailability_Report_Evidence_Check_Name_Availability.json" }, - "Reports_SnapshotCheckNameAvailability": { - "$ref": "./examples/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json" + "Report_SnapshotCheckNameAvailability": { + "$ref": "./examples/Report_NestedResourceCheckNameAvailability_Report_Snapshot_Check_Name_Availability.json" }, - "Reports_WebhookCheckNameAvailability": { - "$ref": "./examples/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json" + "Report_WebhookCheckNameAvailability": { + "$ref": "./examples/Report_NestedResourceCheckNameAvailability_Report_Webhook_Check_Name_Availability.json" } } } }, "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/evidences": { "get": { - "operationId": "Evidences_ListByReport", + "operationId": "Evidence_ListByReport", "tags": [ "AppComplianceAutomation" ], @@ -717,8 +717,8 @@ } }, "x-ms-examples": { - "Evidences_ListByReport": { - "$ref": "./examples/Evidences_ListByReport.json" + "Evidence_ListByReport": { + "$ref": "./examples/Evidence_ListByReport.json" } }, "x-ms-pageable": { @@ -728,7 +728,7 @@ }, "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/evidences/{evidenceName}": { "get": { - "operationId": "Evidences_Get", + "operationId": "Evidence_Get", "tags": [ "AppComplianceAutomation" ], @@ -769,13 +769,13 @@ } }, "x-ms-examples": { - "Evidences_Get": { - "$ref": "./examples/Evidences_Get.json" + "Evidence_Get": { + "$ref": "./examples/Evidence_Get.json" } } }, "put": { - "operationId": "Evidences_CreateOrUpdate", + "operationId": "Evidence_CreateOrUpdate", "tags": [ "AppComplianceAutomation" ], @@ -838,13 +838,13 @@ } }, "x-ms-examples": { - "Evidences_CreateOrUpdate": { - "$ref": "./examples/Evidences_CreateOrUpdate.json" + "Evidence_CreateOrUpdate": { + "$ref": "./examples/Evidence_CreateOrUpdate.json" } } }, "delete": { - "operationId": "Evidences_Delete", + "operationId": "Evidence_Delete", "tags": [ "AppComplianceAutomation" ], @@ -885,15 +885,15 @@ } }, "x-ms-examples": { - "Evidences_Delete": { - "$ref": "./examples/Evidences_Delete.json" + "Evidence_Delete": { + "$ref": "./examples/Evidence_Delete.json" } } } }, "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/evidences/{evidenceName}/download": { "post": { - "operationId": "Evidences_Download", + "operationId": "Evidence_Download", "tags": [ "AppComplianceAutomation" ], @@ -944,15 +944,15 @@ } }, "x-ms-examples": { - "Evidences_Download": { - "$ref": "./examples/Evidences_Download.json" + "Evidence_Download": { + "$ref": "./examples/Evidence_Download.json" } } } }, "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/fix": { "post": { - "operationId": "Reports_Fix", + "operationId": "Report_Fix", "tags": [ "AppComplianceAutomation" ], @@ -1052,7 +1052,7 @@ }, "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/scopingConfigurations": { "get": { - "operationId": "ScopingConfigurations_List", + "operationId": "ScopingConfiguration_List", "tags": [ "AppComplianceAutomation" ], @@ -1085,8 +1085,8 @@ } }, "x-ms-examples": { - "ScopingConfigurations_List": { - "$ref": "./examples/ScopingConfigurations_List.json" + "ScopingConfiguration_List": { + "$ref": "./examples/ScopingConfiguration_List.json" } }, "x-ms-pageable": { @@ -1255,7 +1255,7 @@ }, "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/snapshots": { "get": { - "operationId": "Snapshots_List", + "operationId": "Snapshot_List", "tags": [ "AppComplianceAutomation" ], @@ -1309,8 +1309,8 @@ } }, "x-ms-examples": { - "Snapshots_List": { - "$ref": "./examples/Snapshots_List.json" + "Snapshot_List": { + "$ref": "./examples/Snapshot_List.json" } }, "x-ms-pageable": { @@ -1320,7 +1320,7 @@ }, "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/snapshots/{snapshotName}": { "get": { - "operationId": "Snapshots_Get", + "operationId": "Snapshot_Get", "tags": [ "AppComplianceAutomation" ], @@ -1362,14 +1362,14 @@ }, "x-ms-examples": { "Snapshot_Get": { - "$ref": "./examples/Snapshots_Get.json" + "$ref": "./examples/Snapshot_Get.json" } } } }, "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/snapshots/{snapshotName}/download": { "post": { - "operationId": "Snapshots_Download", + "operationId": "Snapshot_Download", "tags": [ "AppComplianceAutomation" ], @@ -1435,16 +1435,16 @@ }, "x-ms-examples": { "Snapshot_Download_ComplianceDetailedPdfReport": { - "$ref": "./examples/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json" + "$ref": "./examples/Snapshot_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json" }, "Snapshot_Download_CompliancePdfReport": { - "$ref": "./examples/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json" + "$ref": "./examples/Snapshot_Download_Snapshot_Download_Compliance_Pdf_Report.json" }, "Snapshot_Download_ComplianceReport": { - "$ref": "./examples/Snapshots_Download_Snapshot_Download_Compliance_Report.json" + "$ref": "./examples/Snapshot_Download_Snapshot_Download_Compliance_Report.json" }, "Snapshot_Download_ResourceList": { - "$ref": "./examples/Snapshots_Download_Snapshot_Download_Resource_List.json" + "$ref": "./examples/Snapshot_Download_Snapshot_Download_Resource_List.json" } }, "x-ms-long-running-operation-options": { @@ -1455,7 +1455,7 @@ }, "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/syncCertRecord": { "post": { - "operationId": "Reports_SyncCertRecord", + "operationId": "Report_SyncCertRecord", "tags": [ "AppComplianceAutomation" ], @@ -1512,8 +1512,8 @@ } }, "x-ms-examples": { - "Reports_SyncCertRecord": { - "$ref": "./examples/Reports_SyncCertRecord.json" + "Report_SyncCertRecord": { + "$ref": "./examples/Report_SyncCertRecord.json" } }, "x-ms-long-running-operation-options": { @@ -1583,7 +1583,7 @@ }, "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/webhooks": { "get": { - "operationId": "Webhooks_List", + "operationId": "Webhook_List", "tags": [ "AppComplianceAutomation" ], @@ -1637,8 +1637,8 @@ } }, "x-ms-examples": { - "Webhooks_List": { - "$ref": "./examples/Webhooks_List.json" + "Webhook_List": { + "$ref": "./examples/Webhook_List.json" } }, "x-ms-pageable": { @@ -1648,7 +1648,7 @@ }, "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/webhooks/{webhookName}": { "get": { - "operationId": "Webhooks_Get", + "operationId": "Webhook_Get", "tags": [ "AppComplianceAutomation" ], @@ -1690,12 +1690,12 @@ }, "x-ms-examples": { "Webhook_Get": { - "$ref": "./examples/Webhooks_Get.json" + "$ref": "./examples/Webhook_Get.json" } } }, "put": { - "operationId": "Webhooks_CreateOrUpdate", + "operationId": "Webhook_CreateOrUpdate", "tags": [ "AppComplianceAutomation" ], @@ -1753,12 +1753,12 @@ }, "x-ms-examples": { "Webhook_CreateOrUpdate": { - "$ref": "./examples/Webhooks_CreateOrUpdate.json" + "$ref": "./examples/Webhook_CreateOrUpdate.json" } } }, "patch": { - "operationId": "Webhooks_Update", + "operationId": "Webhook_Update", "tags": [ "AppComplianceAutomation" ], @@ -1810,12 +1810,12 @@ }, "x-ms-examples": { "Webhook_Update": { - "$ref": "./examples/Webhooks_Update.json" + "$ref": "./examples/Webhook_Update.json" } } }, "delete": { - "operationId": "Webhooks_Delete", + "operationId": "Webhook_Delete", "tags": [ "AppComplianceAutomation" ], @@ -1857,7 +1857,7 @@ }, "x-ms-examples": { "Webhook_Delete": { - "$ref": "./examples/Webhooks_Delete.json" + "$ref": "./examples/Webhook_Delete.json" } } } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_CreateOrUpdate.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_CreateOrUpdate.json similarity index 96% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_CreateOrUpdate.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_CreateOrUpdate.json index 41184da1447a..af439f4648bc 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_CreateOrUpdate.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_CreateOrUpdate.json @@ -60,6 +60,6 @@ } } }, - "operationId": "Evidences_CreateOrUpdate", - "title": "Evidences_CreateOrUpdate" + "operationId": "Evidence_CreateOrUpdate", + "title": "Evidence_CreateOrUpdate" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Delete.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_Delete.json similarity index 72% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Delete.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_Delete.json index 59a9ab820681..890214acc94b 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Delete.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_Delete.json @@ -8,6 +8,6 @@ "200": {}, "204": {} }, - "operationId": "Evidences_Delete", - "title": "Evidences_Delete" + "operationId": "Evidence_Delete", + "title": "Evidence_Delete" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Download.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_Download.json similarity index 85% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Download.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_Download.json index cbbf140454e5..7827cea38d1f 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Download.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_Download.json @@ -17,6 +17,6 @@ } } }, - "operationId": "Evidences_Download", - "title": "Evidences_Download" + "operationId": "Evidence_Download", + "title": "Evidence_Download" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Get.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_Get.json similarity index 94% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Get.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_Get.json index 510d8971ae53..3ce86f20bad4 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Evidences_Get.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_Get.json @@ -29,6 +29,6 @@ } } }, - "operationId": "Evidences_Get", - "title": "Evidences_Get" + "operationId": "Evidence_Get", + "title": "Evidence_Get" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_ListByReport.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_ListByReport.json similarity index 93% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_ListByReport.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_ListByReport.json index 260d1be6e40f..b93a76ee8334 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidences_ListByReport.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Evidence_ListByReport.json @@ -32,6 +32,6 @@ } } }, - "operationId": "Evidences_ListByReport", - "title": "Evidences_ListByReport" + "operationId": "Evidence_ListByReport", + "title": "Evidence_ListByReport" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_CheckNameAvailability.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CheckNameAvailability.json similarity index 90% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_CheckNameAvailability.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CheckNameAvailability.json index e6770681424e..bcd762897e0a 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_CheckNameAvailability.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CheckNameAvailability.json @@ -1,6 +1,6 @@ { "operationId": "ProviderActions_CheckNameAvailability", - "title": "Reports_CheckNameAvailability", + "title": "Report_CheckNameAvailability", "parameters": { "api-version": "2024-06-27", "parameters": { diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json index f918df4dcc81..2efea20388ba 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_CreateOrUpdate.json @@ -144,6 +144,6 @@ } } }, - "operationId": "Reports_CreateOrUpdate", + "operationId": "Report_CreateOrUpdate", "title": "Report_CreateOrUpdate" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json index c253f72017a6..80a2ac5a5f87 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Delete.json @@ -12,6 +12,6 @@ }, "204": {} }, - "operationId": "Reports_Delete", + "operationId": "Report_Delete", "title": "Report_Delete" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Fix.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Fix.json index 26ff98f180aa..bcc813dce1b6 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Fix.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Fix.json @@ -17,6 +17,6 @@ } } }, - "operationId": "Reports_Fix", + "operationId": "Report_Fix", "title": "Report_Fix" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json index 9141822657c9..968fefe131b4 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Get.json @@ -75,6 +75,6 @@ } } }, - "operationId": "Reports_Get", + "operationId": "Report_Get", "title": "Report_Get" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetCollectionCount.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_GetCollectionCount.json similarity index 88% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetCollectionCount.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_GetCollectionCount.json index 32848a991284..5bc1b448f3d4 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetCollectionCount.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_GetCollectionCount.json @@ -1,6 +1,6 @@ { "operationId": "ProviderActions_GetCollectionCount", - "title": "Reports_GetCollectionCount", + "title": "Report_GetCollectionCount", "parameters": { "api-version": "2024-06-27", "$filter": "Name eq 'Milk'", diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetOverviewStatus.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_GetOverviewStatus.json similarity index 93% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetOverviewStatus.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_GetOverviewStatus.json index 8e81cec2c8bb..1ddbfccb5cb5 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_GetOverviewStatus.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_GetOverviewStatus.json @@ -1,6 +1,6 @@ { "operationId": "ProviderActions_GetOverviewStatus", - "title": "Reports_GetOverviewStatus", + "title": "Report_GetOverviewStatus", "parameters": { "api-version": "2024-06-27", "parameters": { diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_List.json similarity index 98% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_List.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_List.json index 66635cccc4cc..0821ff0492b8 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_List.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_List.json @@ -83,6 +83,6 @@ } } }, - "operationId": "Reports_List", - "title": "Reports_List" + "operationId": "Report_List", + "title": "Report_List" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_NestedResourceCheckNameAvailability_Report_Evidence_Check_Name_Availability.json similarity index 78% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_NestedResourceCheckNameAvailability_Report_Evidence_Check_Name_Availability.json index 18cef3b72ecb..b15d2c857cb6 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Evidence_Check_Name_Availability.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_NestedResourceCheckNameAvailability_Report_Evidence_Check_Name_Availability.json @@ -16,6 +16,6 @@ } } }, - "operationId": "Reports_NestedResourceCheckNameAvailability", - "title": "Reports_EvidenceCheckNameAvailability" + "operationId": "Report_NestedResourceCheckNameAvailability", + "title": "Report_EvidenceCheckNameAvailability" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_NestedResourceCheckNameAvailability_Report_Snapshot_Check_Name_Availability.json similarity index 78% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_NestedResourceCheckNameAvailability_Report_Snapshot_Check_Name_Availability.json index 5b1790224b7b..4064467ccddc 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Reports_NestedResourceCheckNameAvailability_Reports_Snapshot_Check_Name_Availability.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_NestedResourceCheckNameAvailability_Report_Snapshot_Check_Name_Availability.json @@ -16,6 +16,6 @@ } } }, - "operationId": "Reports_NestedResourceCheckNameAvailability", - "title": "Reports_SnapshotCheckNameAvailability" + "operationId": "Report_NestedResourceCheckNameAvailability", + "title": "Report_SnapshotCheckNameAvailability" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_NestedResourceCheckNameAvailability_Report_Webhook_Check_Name_Availability.json similarity index 78% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_NestedResourceCheckNameAvailability_Report_Webhook_Check_Name_Availability.json index aa1e3446fb72..388d47f9a2c2 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_NestedResourceCheckNameAvailability_Reports_Webhook_Check_Name_Availability.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_NestedResourceCheckNameAvailability_Report_Webhook_Check_Name_Availability.json @@ -16,6 +16,6 @@ } } }, - "operationId": "Reports_NestedResourceCheckNameAvailability", - "title": "Reports_WebhookCheckNameAvailability" + "operationId": "Report_NestedResourceCheckNameAvailability", + "title": "Report_WebhookCheckNameAvailability" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_SyncCertRecord.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_SyncCertRecord.json similarity index 93% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_SyncCertRecord.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_SyncCertRecord.json index 2dc22b5ca72c..00f3a43324da 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Reports_SyncCertRecord.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_SyncCertRecord.json @@ -34,6 +34,6 @@ } } }, - "operationId": "Reports_SyncCertRecord", - "title": "Reports_SyncCertRecord" + "operationId": "Report_SyncCertRecord", + "title": "Report_SyncCertRecord" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json index 611d8b5ebfa8..fba98d1d3712 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_Update.json @@ -104,6 +104,6 @@ } } }, - "operationId": "Reports_Update", + "operationId": "Report_Update", "title": "Report_Update" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfigurations_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_List.json similarity index 94% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfigurations_List.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_List.json index 734dd92af311..d29f4275ceb8 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfigurations_List.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingConfiguration_List.json @@ -42,6 +42,6 @@ } } }, - "operationId": "ScopingConfigurations_List", - "title": "ScopingConfigurations_List" + "operationId": "ScopingConfiguration_List", + "title": "ScopingConfiguration_List" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json similarity index 95% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json index d4b213c0bdee..d84be3fd0ea1 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Download_Snapshot_Download_Compliance_Detailed_Pdf_Report.json @@ -24,6 +24,6 @@ } } }, - "operationId": "Snapshots_Download", + "operationId": "Snapshot_Download", "title": "Snapshot_Download_ComplianceDetailedPdfReport" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Download_Snapshot_Download_Compliance_Pdf_Report.json similarity index 95% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Download_Snapshot_Download_Compliance_Pdf_Report.json index e016ce194119..fab4b64e88d1 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Snapshots_Download_Snapshot_Download_Compliance_Pdf_Report.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Download_Snapshot_Download_Compliance_Pdf_Report.json @@ -24,6 +24,6 @@ } } }, - "operationId": "Snapshots_Download", + "operationId": "Snapshot_Download", "title": "Snapshot_Download_CompliancePdfReport" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Report.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Download_Snapshot_Download_Compliance_Report.json similarity index 98% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Report.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Download_Snapshot_Download_Compliance_Report.json index d87ae1b85dc9..e7e5d3d67aed 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Compliance_Report.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Download_Snapshot_Download_Compliance_Report.json @@ -37,6 +37,6 @@ } } }, - "operationId": "Snapshots_Download", + "operationId": "Snapshot_Download", "title": "Snapshot_Download_ComplianceReport" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Resource_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Download_Snapshot_Download_Resource_List.json similarity index 96% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Resource_List.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Download_Snapshot_Download_Resource_List.json index 34a29b24cf3e..603716a5154a 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Download_Snapshot_Download_Resource_List.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Download_Snapshot_Download_Resource_List.json @@ -29,6 +29,6 @@ } } }, - "operationId": "Snapshots_Download", + "operationId": "Snapshot_Download", "title": "Snapshot_Download_ResourceList" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Get.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json similarity index 99% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Get.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json index e0ef0b724d5d..9637ea243640 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_Get.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_Get.json @@ -179,6 +179,6 @@ } } }, - "operationId": "Snapshots_Get", + "operationId": "Snapshot_Get", "title": "Snapshot_Get" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_List.json similarity index 99% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_List.json index 7274099cf5ab..592c4f1160b5 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshots_List.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Snapshot_List.json @@ -189,6 +189,6 @@ } } }, - "operationId": "Snapshots_List", - "title": "Snapshots_List" + "operationId": "Snapshot_List", + "title": "Snapshot_List" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_CreateOrUpdate.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_CreateOrUpdate.json similarity index 98% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_CreateOrUpdate.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_CreateOrUpdate.json index 379f63d3f3fd..02279408de64 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_CreateOrUpdate.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_CreateOrUpdate.json @@ -80,6 +80,6 @@ } } }, - "operationId": "Webhooks_CreateOrUpdate", + "operationId": "Webhook_CreateOrUpdate", "title": "Webhook_CreateOrUpdate" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Delete.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_Delete.json similarity index 85% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Delete.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_Delete.json index fd17dfb9e1d3..681e90bfaf99 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Delete.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_Delete.json @@ -8,6 +8,6 @@ "200": {}, "204": {} }, - "operationId": "Webhooks_Delete", + "operationId": "Webhook_Delete", "title": "Webhook_Delete" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Get.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_Get.json similarity index 97% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Get.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_Get.json index ea6f0c6636c9..8433044df3b6 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_Get.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_Get.json @@ -36,6 +36,6 @@ } } }, - "operationId": "Webhooks_Get", + "operationId": "Webhook_Get", "title": "Webhook_Get" } diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_List.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_List.json similarity index 96% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_List.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_List.json index 74019ce2f47f..5218b564374a 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Webhooks_List.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_List.json @@ -42,6 +42,6 @@ } } }, - "operationId": "Webhooks_List", - "title": "Webhooks_List" + "operationId": "Webhook_List", + "title": "Webhook_List" } diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Update.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_Update.json similarity index 97% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Update.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_Update.json index 4fe5b96af53e..d30eb32aadbe 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhooks_Update.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Webhook_Update.json @@ -50,6 +50,6 @@ } } }, - "operationId": "Webhooks_Update", + "operationId": "Webhook_Update", "title": "Webhook_Update" } From 7336d7593a06ad9fb6cccb7726e60560b670563a Mon Sep 17 00:00:00 2001 From: Yanwen Liu Date: Mon, 3 Jun 2024 13:19:15 +0800 Subject: [PATCH 33/33] rename getScopingQuestions and move model reportBaseProperties to alias --- ...s.json => Report_GetScopingQuestions.json} | 4 +- .../models/models.tsp | 4 +- .../resources/ReportResource.tsp | 2 +- .../2024-06-27/appcomplianceautomation.json | 79 +------------------ ...s.json => Report_GetScopingQuestions.json} | 4 +- 5 files changed, 10 insertions(+), 83 deletions(-) rename specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/{ScopingQuestions.json => Report_GetScopingQuestions.json} (96%) rename specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/{ScopingQuestions.json => Report_GetScopingQuestions.json} (96%) diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingQuestions.json b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_GetScopingQuestions.json similarity index 96% rename from specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingQuestions.json rename to specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_GetScopingQuestions.json index 55708a0bd0d0..08ef357ea5fd 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/ScopingQuestions.json +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/examples/2024-06-27/Report_GetScopingQuestions.json @@ -1,6 +1,6 @@ { - "operationId": "GetScopingQuestions", - "title": "GetScopingQuestions", + "operationId": "Report_GetScopingQuestions", + "title": "Report_GetScopingQuestions", "parameters": { "api-version": "2024-06-27", "reportName": "testReportName" diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp index 5e474f8d2e80..b04607c54826 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/models/models.tsp @@ -735,7 +735,7 @@ model StorageInfo { /** * Report's properties. */ -model ReportBaseProperties { +alias ReportBaseProperties = { /** * Report status. */ @@ -802,7 +802,7 @@ model ReportBaseProperties { */ @visibility("read") provisioningState?: ProvisioningState; -} +}; /** * Create Report's properties. diff --git a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp index 80f5aaf96344..19be57009d87 100644 --- a/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp +++ b/specification/appcomplianceautomation/AppComplianceAutomation.Management/resources/ReportResource.tsp @@ -134,7 +134,7 @@ interface Report { * Fix the AppComplianceAutomation report error. e.g: App Compliance Automation Tool service unregistered, automation removed. */ #suppress "@azure-tools/typespec-azure-core/no-operation-id" "For backward compatibility" - @operationId("GetScopingQuestions") + @operationId("Report_GetScopingQuestions") getScopingQuestions is ArmResourceActionSync< ReportResource, void, diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json index 5a5636ec922e..d602558f2e49 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/appcomplianceautomation.json @@ -1011,7 +1011,7 @@ }, "/providers/Microsoft.AppComplianceAutomation/reports/{reportName}/getScopingQuestions": { "post": { - "operationId": "GetScopingQuestions", + "operationId": "Report_GetScopingQuestions", "tags": [ "AppComplianceAutomation" ], @@ -1044,8 +1044,8 @@ } }, "x-ms-examples": { - "GetScopingQuestions": { - "$ref": "./examples/ScopingQuestions.json" + "Report_GetScopingQuestions": { + "$ref": "./examples/Report_GetScopingQuestions.json" } } } @@ -3055,79 +3055,6 @@ } } }, - "ReportBaseProperties": { - "type": "object", - "description": "Report's properties.", - "properties": { - "status": { - "$ref": "#/definitions/ReportStatus", - "description": "Report status.", - "readOnly": true - }, - "errors": { - "type": "array", - "description": "List of report error codes.", - "items": { - "type": "string" - }, - "readOnly": true - }, - "tenantId": { - "type": "string", - "description": "Report's tenant id.", - "readOnly": true - }, - "offerGuid": { - "type": "string", - "description": "A list of comma-separated offerGuids indicates a series of offerGuids that map to the report. For example, \"00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002\" and \"00000000-0000-0000-0000-000000000003\"." - }, - "nextTriggerTime": { - "type": "string", - "format": "date-time", - "description": "Report next collection trigger time.", - "readOnly": true - }, - "lastTriggerTime": { - "type": "string", - "format": "date-time", - "description": "Report last collection trigger time.", - "readOnly": true - }, - "subscriptions": { - "type": "array", - "description": "List of subscription Ids.", - "items": { - "type": "string" - }, - "readOnly": true - }, - "complianceStatus": { - "$ref": "#/definitions/ReportComplianceStatus", - "description": "Report compliance status.", - "readOnly": true - }, - "storageInfo": { - "$ref": "#/definitions/StorageInfo", - "description": "The information of 'bring your own storage' binding to the report" - }, - "certRecords": { - "type": "array", - "description": "List of synchronized certification records.", - "items": { - "$ref": "#/definitions/CertSyncRecord" - }, - "readOnly": true, - "x-ms-identifiers": [ - "offerGuid" - ] - }, - "provisioningState": { - "$ref": "#/definitions/ProvisioningState", - "description": "Azure lifecycle management", - "readOnly": true - } - } - }, "ReportComplianceStatus": { "type": "object", "description": "A list which includes all the compliance result for one report.", diff --git a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingQuestions.json b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_GetScopingQuestions.json similarity index 96% rename from specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingQuestions.json rename to specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_GetScopingQuestions.json index 55708a0bd0d0..08ef357ea5fd 100644 --- a/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/ScopingQuestions.json +++ b/specification/appcomplianceautomation/resource-manager/Microsoft.AppComplianceAutomation/stable/2024-06-27/examples/Report_GetScopingQuestions.json @@ -1,6 +1,6 @@ { - "operationId": "GetScopingQuestions", - "title": "GetScopingQuestions", + "operationId": "Report_GetScopingQuestions", + "title": "Report_GetScopingQuestions", "parameters": { "api-version": "2024-06-27", "reportName": "testReportName"