azure-rest-api-specs icon indicating copy to clipboard operation
azure-rest-api-specs copied to clipboard

Adding a new stable version 2023-01-01 (Taking changes from 2022-11-01-preview)

Open Shashank1306s opened this issue 3 years ago • 34 comments

ARM API Information (Control Plane)

MSFT employees can try out our new experience at OpenAPI Hub - one location for using our validation tools and finding your workflow. Azure 1st Party Service can try out the Shift Left experience to initiate API design review from ADO code repo. If you are interested, may request engineering support by filling in with the form https://aka.ms/ShiftLeftSupportForm.

Changelog

Add a changelog entry for this PR by answering the following questions:

  1. What's the purpose of the update?
    • [ ] new service onboarding
    • [x] new API version
    • [ ] update existing version for new feature
    • [ ] update existing version to fix swagger quality issue in s360
    • [ ] Other, please clarify
  2. When are you targeting to deploy the new service/feature to public regions? Please provide the date or, if the date is not yet available, the month.
  3. When do you expect to publish the swagger? Please provide date or, the the date is not yet available, the month.
  4. By default, Azure SDKs of all languages (.NET/Python/Java/JavaScript for both management-plane SDK and data-plane SDK, Go for management-plane SDK only ) MUST be refreshed with/after swagger of new version is published. If you prefer NOT to refresh any specific SDK language upon swagger updates in the current PR, please leave details with justification here.

Contribution checklist (MS Employees Only):

If any further question about AME onboarding or validation tools, please view the FAQ.

ARM API Review Checklist

Applicability: :warning:

If your changes encompass only the following scenarios, you should SKIP this section, as these scenarios do not require ARM review.

  • Change to data plane APIs
  • Adding new properties
  • All removals

Otherwise your PR may be subject to ARM review requirements. Complete the following:

  • [x] Check this box if any of the following apply to the PR so that the label "ARMReview" and "WaitForARMFeedback" will be added by bot to kick off ARM API Review. Missing to check this box in the following scenario may result in delays to the ARM manifest review and deployment.

    • Adding a new service
    • Adding new API(s)
    • Adding a new API version -[ ] To review changes efficiently, ensure you copy the existing version into the new directory structure for first commit and then push new changes, including version updates, in separate commits. You can use OpenAPIHub to initialize the PR for adding a new version. For more details refer to the wiki.
  • [x] Ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

  • [x] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist

If you have any breaking changes as defined in the Breaking Change Policy, request approval from the Breaking Change Review Board.

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Additional details on the process and office hours are on the Breaking Change Wiki.

NOTE: To update API(s) in public preview for over 1 year (refer to Retirement of Previews)

Please follow the link to find more details on PR review process.

Shashank1306s avatar Jan 05 '23 05:01 Shashank1306s

Hi, @Shashank1306s Thanks for your PR. I am workflow bot for review process. Here are some small tips.

  • Please ensure to do self-check against checklists in first PR comment.
  • PR assignee is the person auto-assigned and responsible for your current PR reviewing and merging.
  • For specs comparison cross API versions, Use API Specs Comparison Report Generator
  • If there is CI failure(s), to fix CI error(s) is mandatory for PR merging; or you need to provide justification in PR comment for explanation. How to fix?
  • Any feedback about review process or workflow bot, pls contact swagger and tools team. [email protected]

    Swagger Validation Report

    ️️✔️BreakingChange succeeded [Detail] [Expand]
    There are no breaking changes.
    ️❌Breaking Change(Cross-Version): 5 Errors, 86 Warnings failed [Detail]
    compared swaggers (via Oad v0.10.4)] new version base version
    dataprotection.json 2023-01-01(370c0fd) 2022-12-01(main)
    dataprotection.json 2023-01-01(370c0fd) 2022-11-01-preview(main)

    The following breaking changes are detected by comparison with the latest stable version:

    Rule Message
    1007 - RemovedClientParameter The new version is missing a client parameter that was found in the old version. Was 'SubscriptionId' removed or renamed?
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L6978:3
    Old: Microsoft.DataProtection/stable/2022-12-01/dataprotection.json#L6802:3
    1007 - RemovedClientParameter The new version is missing a client parameter that was found in the old version. Was 'ResourceGroupName' removed or renamed?
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L6978:3
    Old: Microsoft.DataProtection/stable/2022-12-01/dataprotection.json#L6802:3
    1007 - RemovedClientParameter The new version is missing a client parameter that was found in the old version. Was 'ApiVersion' removed or renamed?
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L6978:3
    Old: Microsoft.DataProtection/stable/2022-12-01/dataprotection.json#L6802:3
    1011 - AddingResponseCode The new version adds a response code '201'.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L2648:11
    1044 - XmsLongRunningOperationChanged The new version has a different 'x-ms-longrunning-operation' value than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L440:7
    Old: Microsoft.DataProtection/stable/2022-12-01/dataprotection.json#L440:7


    The following breaking changes are detected by comparison with the latest preview version:

    Only 30 items are listed, please refer to log for more details.

    Rule Message
    :warning: 1005 - RemovedPath The new version is missing a path that was found in the old version. Was path '/{resourceId}/providers/Microsoft.DataProtection/backupInstances' removed or restructured?
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L1016:5
    :warning: 1005 - RemovedPath The new version is missing a path that was found in the old version. Was path '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupResourceGuardProxies' removed or restructured?
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L3552:5
    :warning: 1005 - RemovedPath The new version is missing a path that was found in the old version. Was path '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupResourceGuardProxies/{resourceGuardProxyName}' removed or restructured?
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L3599:5
    :warning: 1005 - RemovedPath The new version is missing a path that was found in the old version. Was path '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupResourceGuardProxies/{resourceGuardProxyName}/unlockDelete' removed or restructured?
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L3754:5
    :warning: 1006 - RemovedDefinition The new version is missing a definition that was found in the old version. Was 'ResourceGuardProxyBase' removed or renamed?
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L3461:3
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L3814:3
    :warning: 1006 - RemovedDefinition The new version is missing a definition that was found in the old version. Was 'ResourceGuardProxyBaseResource' removed or renamed?
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L3461:3
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L3814:3
    :warning: 1006 - RemovedDefinition The new version is missing a definition that was found in the old version. Was 'UnlockDeleteRequest' removed or renamed?
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L3461:3
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L3814:3
    :warning: 1007 - RemovedClientParameter The new version is missing a client parameter that was found in the old version. Was 'SubscriptionId' removed or renamed?
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L6978:3
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L7402:3
    :warning: 1007 - RemovedClientParameter The new version is missing a client parameter that was found in the old version. Was 'ResourceGroupName' removed or renamed?
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L6978:3
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L7402:3
    :warning: 1007 - RemovedClientParameter The new version is missing a client parameter that was found in the old version. Was 'ApiVersion' removed or renamed?
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L6978:3
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L7402:3
    :warning: 1007 - RemovedClientParameter The new version is missing a client parameter that was found in the old version. Was 'ResourceId' removed or renamed?
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L6978:3
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L7402:3
    :warning: 1011 - AddingResponseCode The new version adds a response code '201'.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L2648:11
    :warning: 1017 - ReferenceRedirection The '$ref' property points to different models in the old and new versions.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L2792:13
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L2884:13
    :warning: 1019 - RemovedEnumValue The new version is removing enum value(s) 'SnapshotStore' from the old version.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L6606:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L6945:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L31:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L31:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L73:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L73:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L143:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L143:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L194:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L194:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L245:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L245:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L293:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L293:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L338:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L338:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L387:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L387:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L449:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L449:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L496:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L495:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L553:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L552:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L622:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L621:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L680:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L679:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L771:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L770:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L819:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L818:9
    :warning: 1023 - TypeFormatChanged The new version has a different format than the previous one.
    New: Microsoft.DataProtection/stable/2023-01-01/dataprotection.json#L869:9
    Old: Microsoft.DataProtection/preview/2022-11-01-preview/dataprotection.json#L868:9
    ️️✔️CredScan succeeded [Detail] [Expand]
    There is no credential detected.
    ️️✔️LintDiff succeeded [Detail] [Expand]
    Validation passes for LintDiff.
    compared tags (via openapi-validator v2.0.0) new version base version
    package-2023-01 package-2023-01(370c0fd) default(main)
    ️️✔️Avocado succeeded [Detail] [Expand]
    Validation passes for Avocado.
    ️❌ApiReadinessCheck: 1 Errors, 0 Warnings failed [Detail]
    Rule Message
    API Readiness check failed. Please make sure your service is deployed. "code: InvalidResourceType,
    message: The resource type 'operations' could not be found in the namespace 'Microsoft.DataProtection' for api version '2023-01-01'. The supported api-versions are '2020-01-01-alpha,
    2021-02-01-preview,
    2021-06-01-preview,
    2021-01-01,
    2021-07-01,
    2021-10-01-preview,
    2021-12-01-preview,
    2022-01-01,
    2022-02-01-preview,
    2022-03-01,
    2022-04-01,
    2022-05-01,
    2022-09-01-preview,
    2022-10-01-preview,
    2022-11-01-preview,
    2022-12-01'."
    ️❌~[Staging] ServiceAPIReadinessTest: 59 Errors, 0 Warnings failed [Detail]

    Tag package-2023-01; Prod region: Not deployed; Canary region: Deployed

    Test run on region: eastus2euap; Operation coverage: total: 61, untested: 0, failed: 59, passed: 2

    Service API Readiness Test failed. Check pipeline artifact for detail report.

    Only 30 items are listed, please refer to log for more details.

    Rule Message
    CLIENT_ERROR statusCode: 404,
    errorCode: InvalidResourceType,
    errorMessage: The resource type 'locations/checkNameAvailability' could not be found in the namespace 'Microsoft.DataProtection' for api version '2023-01-01'. The supported api-versions are '2020-01-01-alpha,2021-02-01-preview,2021-06-01-preview,2021-01-01,2021-07-01,2021-10-01-preview,2021-12-01-preview,2022-01-01,2022-02-01-preview,2022-03-01,2022-04-01,2022-05-01,2022-09-01-preview,2022-10-01-preview,2022-11-01-preview,2022-12-01'.
    Source: runtime
    OperationId: BackupVaults_CheckNameAvailability
    CLIENT_ERROR statusCode: 400,
    errorCode: NoRegisteredProviderFound,
    errorMessage: No registered resource provider found for location 'eastus2euap' and API version '2023-01-01' for type 'BackupVaults'. The supported api-versions are '2020-01-01-alpha, 2021-02-01-preview, 2021-06-01-preview, 2021-01-01, 2021-07-01, 2021-10-01-preview, 2021-12-01-preview, 2022-01-01, 2022-02-01-preview, 2022-03-01, 2022-04-01, 2022-05-01, 2022-09-01-preview, 2022-10-01-preview, 2022-11-01-preview, 2022-12-01'. The supported locations are 'southcentralus, eastus, eastus2, westus, uksouth, australiacentral, australiaeast, australiasoutheast, brazilsouth, canadacentral, canadaeast, centralus, eastasia, francecentral, germanywestcentral, centralindia, southindia, westindia, japaneast, japanwest, koreacentral, koreasouth, northcentralus, northeurope, norwayeast, southafricanorth, southeastasia, switzerlandnorth, uaenorth, ukwest, westcentralus, westeurope, westus2, jioindiawest, jioindiacentral, westus3, swedencentral, qatarcentral, centraluseuap, eastus2euap'.
    Source: runtime
    OperationId: BackupVaults_CreateOrUpdate
    CLIENT_ERROR statusCode: 404,
    errorCode: InvalidResourceType,
    errorMessage: The resource type 'BackupVaults' could not be found in the namespace 'Microsoft.DataProtection' for api version '2023-01-01'. The supported api-versions are '2020-01-01-alpha,2021-02-01-preview,2021-06-01-preview,2021-01-01,2021-07-01,2021-10-01-preview,2021-12-01-preview,2022-01-01,2022-02-01-preview,2022-03-01,2022-04-01,2022-05-01,2022-09-01-preview,2022-10-01-preview,2022-11-01-preview,2022-12-01'.
    Source: runtime
    OperationId: BackupVaults_GetInSubscription
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/BackupVaults/vaultnam0lwet9' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: BackupVaults_Get
    CLIENT_ERROR statusCode: 404,
    errorCode: InvalidResourceType,
    errorMessage: The resource type 'BackupVaults' could not be found in the namespace 'Microsoft.DataProtection' for api version '2023-01-01'. The supported api-versions are '2020-01-01-alpha,2021-02-01-preview,2021-06-01-preview,2021-01-01,2021-07-01,2021-10-01-preview,2021-12-01-preview,2022-01-01,2022-02-01-preview,2022-03-01,2022-04-01,2022-05-01,2022-09-01-preview,2022-10-01-preview,2022-11-01-preview,2022-12-01'.
    Source: runtime
    OperationId: BackupVaults_GetInResourceGroup
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/BackupVaults/vaultnam0lwet9' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: BackupVaults_Update
    CLIENT_ERROR statusCode: 400,
    errorCode: NoRegisteredProviderFound,
    errorMessage: No registered resource provider found for location 'eastus2euap' and API version '2023-01-01' for type 'ResourceGuards'. The supported api-versions are '2021-02-01-preview, 2021-07-01, 2021-10-01-preview, 2021-12-01-preview, 2022-01-01, 2022-02-01-preview, 2022-03-01, 2022-04-01, 2022-05-01, 2022-09-01-preview, 2022-10-01-preview, 2022-11-01-preview, 2022-12-01'. The supported locations are 'eastus2, northeurope, southeastasia, westcentralus, southcentralus, eastus, westus, uksouth, australiacentral, australiaeast, australiasoutheast, brazilsouth, canadacentral, canadaeast, centralus, eastasia, francecentral, germanywestcentral, centralindia, southindia, westindia, japaneast, japanwest, koreacentral, koreasouth, northcentralus, norwayeast, southafricanorth, switzerlandnorth, uaenorth, ukwest, westeurope, westus2, jioindiawest, jioindiacentral, westus3, swedencentral, qatarcentral, centraluseuap, eastus2euap'.
    Source: runtime
    OperationId: ResourceGuards_Put
    CLIENT_ERROR statusCode: 404,
    errorCode: InvalidResourceType,
    errorMessage: The resource type 'ResourceGuards' could not be found in the namespace 'Microsoft.DataProtection' for api version '2023-01-01'. The supported api-versions are '2021-02-01-preview,2021-07-01,2021-10-01-preview,2021-12-01-preview,2022-01-01,2022-02-01-preview,2022-03-01,2022-04-01,2022-05-01,2022-09-01-preview,2022-10-01-preview,2022-11-01-preview,2022-12-01'.
    Source: runtime
    OperationId: ResourceGuards_GetResourcesInSubscription
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/ResourceGuards/resource1ji54r' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: ResourceGuards_GetDeleteProtectedItemRequestsObjects
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/ResourceGuards/resource1ji54r' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: ResourceGuards_GetDefaultBackupSecurityPINRequestsObject
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/ResourceGuards/resource1ji54r' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: ResourceGuards_GetUpdateProtectedItemRequestsObjects
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/ResourceGuards/resource1ji54r' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: ResourceGuards_GetDefaultUpdateProtectionPolicyRequestsObject
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/ResourceGuards/resource1ji54r' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: ResourceGuards_GetUpdateProtectionPolicyRequestsObjects
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/ResourceGuards/resource1ji54r' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: ResourceGuards_GetDefaultDisableSoftDeleteRequestsObject
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/ResourceGuards/resource1ji54r' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: ResourceGuards_GetBackupSecurityPINRequestsObjects
    CLIENT_ERROR statusCode: 404,
    errorCode: InvalidResourceType,
    errorMessage: The resource type 'ResourceGuards' could not be found in the namespace 'Microsoft.DataProtection' for api version '2023-01-01'. The supported api-versions are '2021-02-01-preview,2021-07-01,2021-10-01-preview,2021-12-01-preview,2022-01-01,2022-02-01-preview,2022-03-01,2022-04-01,2022-05-01,2022-09-01-preview,2022-10-01-preview,2022-11-01-preview,2022-12-01'.
    Source: runtime
    OperationId: ResourceGuards_GetResourcesInResourceGroup
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/ResourceGuards/resource1ji54r' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: ResourceGuards_Get
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/ResourceGuards/resource1ji54r' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: ResourceGuards_GetDefaultDeleteResourceGuardProxyRequestsObject
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/ResourceGuards/resource1ji54r' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: ResourceGuards_GetDisableSoftDeleteRequestsObjects
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/ResourceGuards/resource1ji54r' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: ResourceGuards_GetDeleteResourceGuardProxyRequestsObjects
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/ResourceGuards/resource1ji54r' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: ResourceGuards_GetDefaultUpdateProtectedItemRequestsObject
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/ResourceGuards/resource1ji54r' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: ResourceGuards_GetDefaultDeleteProtectedItemRequestsObject
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/ResourceGuards/resource1ji54r' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: ResourceGuards_Patch
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/BackupVaults/vaultnam0lwet9' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: BackupInstances_CreateOrUpdate
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/BackupVaults/vaultnam0lwet9' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: BackupInstances_List
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/BackupVaults/vaultnam0lwet9' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: BackupInstances_Get
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/BackupVaults/vaultnam0lwet9' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: BackupInstances_GetBackupInstanceOperationResult
    CLIENT_ERROR statusCode: 403,
    errorCode: LinkedAuthorizationFailed,
    errorMessage: The client '7904a8be-825f-480e-a728-80a70579dba4' with object id '7904a8be-825f-480e-a728-80a70579dba4' has permission to perform action 'Microsoft.DataProtection/backupVaults/backupInstances/restore/action' on scope '/subscriptions/db5eb68e-73e2-4fa8-b18a-46cd1be4cce5/resourceGroups/apiTest-SmjxMl-22071/providers/Microsoft.DataProtection/backupVaults/vaultnam0lwet9/backupInstances/backupinyaz7lp'; however, it does not have permission to perform action 'read' on the linked scope(s) '/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb' or the linked scope(s) are invalid.
    Source: runtime
    OperationId: BackupInstances_TriggerRestore
    CLIENT_ERROR statusCode: 403,
    errorCode: LinkedAuthorizationFailed,
    errorMessage: The client '7904a8be-825f-480e-a728-80a70579dba4' with object id '7904a8be-825f-480e-a728-80a70579dba4' has permission to perform action 'Microsoft.DataProtection/backupVaults/validateForBackup/action' on scope '/subscriptions/db5eb68e-73e2-4fa8-b18a-46cd1be4cce5/resourceGroups/apiTest-SmjxMl-22071/providers/Microsoft.DataProtection/backupVaults/vaultnam0lwet9'; however, it does not have permission to perform action 'read' on the linked scope(s) '/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest' or the linked scope(s) are invalid.
    Source: runtime
    OperationId: BackupInstances_ValidateForBackup
    CLIENT_ERROR statusCode: 404,
    errorCode: ResourceNotFound,
    errorMessage: The Resource 'Microsoft.DataProtection/BackupVaults/vaultnam0lwet9' under resource group 'apiTest-SmjxMl-22071' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix
    Source: runtime
    OperationId: BackupInstances_SyncBackupInstance
    ️️✔️~[Staging] SwaggerAPIView succeeded [Detail] [Expand]
    ️️✔️~[Staging] CadlAPIView succeeded [Detail] [Expand]
    ️️✔️ModelValidation succeeded [Detail] [Expand]
    Validation passes for ModelValidation.
    ️️✔️SemanticValidation succeeded [Detail] [Expand]
    Validation passes for SemanticValidation.
    ️️✔️PoliCheck succeeded [Detail] [Expand]
    Validation passed for PoliCheck.
    ️️✔️PrettierCheck succeeded [Detail] [Expand]
    Validation passes for PrettierCheck.
    ️️✔️SpellCheck succeeded [Detail] [Expand]
    Validation passes for SpellCheck.
    ️️✔️Lint(RPaaS) succeeded [Detail] [Expand]
    Validation passes for Lint(RPaaS).
    ️️✔️CadlValidation succeeded [Detail] [Expand]
    Validation passes for CadlValidation.
    ️️✔️PR Summary succeeded [Detail] [Expand]
    Validation passes for Summary.
    Posted by Swagger Pipeline | How to fix these errors?

    Swagger Generation Artifacts

    ️️✔️ApiDocPreview succeeded [Detail] [Expand]
     Please click here to preview with your @microsoft account. 
    ️❌SDK Breaking Change Tracking failed [Detail]

    Breaking Changes Tracking

    azure-sdk-for-go - sdk/resourcemanager/dataprotection/armdataprotection - Approved - 2.0.0
    -	Const `StorageSettingStoreTypesSnapshotStore` has been removed
    +	Const `StorageSettingStoreTypesSnapshotStore` from type alias `StorageSettingStoreTypes` has been removed
    +	Operation `*BackupVaultsClient.Delete` has been changed to LRO, use `*BackupVaultsClient.BeginDelete` instead.
    +	Type of `ErrorAdditionalInfo.Info` has been changed from `interface{}` to `any`
    azure-sdk-for-python-track2 - track2_azure-mgmt-dataprotection - 1.0.0b4
    +	Model ResourceGuardResource no longer has parameter identity
    +	Removed operation group BackupInstancesExtensionRoutingOperations
    +	Removed operation group DppResourceGuardProxyOperations
    +	Renamed operation BackupVaultsOperations.delete to BackupVaultsOperations.begin_delete
    ️🔄 azure-sdk-for-net-track2 inProgress [Detail]
    ️🔄 azure-sdk-for-python-track2 inProgress [Detail]
    ️️✔️ azure-sdk-for-java succeeded [Detail] [Expand]
    ️️✔️ azure-sdk-for-go succeeded [Detail] [Expand]
    • ️✔️Succeeded [Logs]Release - Generate from 42e62bef21fca828da9a9a81d845d00aae466877. SDK Automation 14.0.0
      command	sh ./eng/scripts/automation_init.sh ../../../../../azure-sdk-for-go_tmp/initInput.json ../../../../../azure-sdk-for-go_tmp/initOutput.json
      command	generator automation-v2 ../../../../../azure-sdk-for-go_tmp/generateInput.json ../../../../../azure-sdk-for-go_tmp/generateOutput.json
    • ️✔️sdk/resourcemanager/dataprotection/armdataprotection [View full logs]  [Release SDK Changes] Breaking Change Detected
      info	[Changelog] ### Breaking Changes
      info	[Changelog]
      info	[Changelog] - Function `*ResourceGuardsClient.Patch` parameter(s) have been changed from `(context.Context, string, string, PatchResourceRequestInput, *ResourceGuardsClientPatchOptions)` to `(context.Context, string, string, PatchResourceGuardInput, *ResourceGuardsClientPatchOptions)`
      info	[Changelog] - Type of `ErrorAdditionalInfo.Info` has been changed from `interface{}` to `any`
      info	[Changelog] - Const `StorageSettingStoreTypesSnapshotStore` from type alias `StorageSettingStoreTypes` has been removed
      info	[Changelog] - Operation `*BackupVaultsClient.Delete` has been changed to LRO, use `*BackupVaultsClient.BeginDelete` instead.
      info	[Changelog] - Struct `CloudError` has been removed
      info	[Changelog] - Field `Identity` of struct `ResourceGuardResource` has been removed
      info	[Changelog]
      info	[Changelog] ### Features Added
      info	[Changelog]
      info	[Changelog] - New value `SourceDataStoreTypeOperationalStore` added to type alias `SourceDataStoreType`
      info	[Changelog] - New value `StorageSettingStoreTypesOperationalStore` added to type alias `StorageSettingStoreTypes`
      info	[Changelog] - New value `StorageSettingTypesZoneRedundant` added to type alias `StorageSettingTypes`
      info	[Changelog] - New type alias `CrossSubscriptionRestoreState` with values `CrossSubscriptionRestoreStateDisabled`, `CrossSubscriptionRestoreStateEnabled`, `CrossSubscriptionRestoreStatePermanentlyDisabled`
      info	[Changelog] - New type alias `ExistingResourcePolicy` with values `ExistingResourcePolicyPatch`, `ExistingResourcePolicySkip`
      info	[Changelog] - New type alias `ImmutabilityState` with values `ImmutabilityStateDisabled`, `ImmutabilityStateLocked`, `ImmutabilityStateUnlocked`
      info	[Changelog] - New type alias `PersistentVolumeRestoreMode` with values `PersistentVolumeRestoreModeRestoreWithVolumeData`, `PersistentVolumeRestoreModeRestoreWithoutVolumeData`
      info	[Changelog] - New type alias `SoftDeleteState` with values `SoftDeleteStateAlwaysOn`, `SoftDeleteStateOff`, `SoftDeleteStateOn`
      info	[Changelog] - New function `*BackupDatasourceParameters.GetBackupDatasourceParameters() *BackupDatasourceParameters`
      info	[Changelog] - New function `*BlobBackupDatasourceParameters.GetBackupDatasourceParameters() *BackupDatasourceParameters`
      info	[Changelog] - New function `NewDeletedBackupInstancesClient(string, azcore.TokenCredential, *arm.ClientOptions) (*DeletedBackupInstancesClient, error)`
      info	[Changelog] - New function `*DeletedBackupInstancesClient.Get(context.Context, string, string, string, *DeletedBackupInstancesClientGetOptions) (DeletedBackupInstancesClientGetResponse, error)`
      info	[Changelog] - New function `*DeletedBackupInstancesClient.NewListPager(string, string, *DeletedBackupInstancesClientListOptions) *runtime.Pager[DeletedBackupInstancesClientListResponse]`
      info	[Changelog] - New function `*DeletedBackupInstancesClient.BeginUndelete(context.Context, string, string, string, *DeletedBackupInstancesClientBeginUndeleteOptions) (*runtime.Poller[DeletedBackupInstancesClientUndeleteResponse], error)`
      info	[Changelog] - New function `*ItemPathBasedRestoreCriteria.GetItemLevelRestoreCriteria() *ItemLevelRestoreCriteria`
      info	[Changelog] - New function `*KubernetesClusterBackupDatasourceParameters.GetBackupDatasourceParameters() *BackupDatasourceParameters`
      info	[Changelog] - New function `*KubernetesClusterRestoreCriteria.GetItemLevelRestoreCriteria() *ItemLevelRestoreCriteria`
      info	[Changelog] - New struct `BlobBackupDatasourceParameters`
      info	[Changelog] - New struct `CrossSubscriptionRestoreSettings`
      info	[Changelog] - New struct `DeletedBackupInstance`
      info	[Changelog] - New struct `DeletedBackupInstanceResource`
      info	[Changelog] - New struct `DeletedBackupInstanceResourceList`
      info	[Changelog] - New struct `DeletedBackupInstancesClient`
      info	[Changelog] - New struct `DeletedBackupInstancesClientListResponse`
      info	[Changelog] - New struct `DeletedBackupInstancesClientUndeleteResponse`
      info	[Changelog] - New struct `DeletionInfo`
      info	[Changelog] - New struct `DppBaseTrackedResource`
      info	[Changelog] - New struct `DppProxyResource`
      info	[Changelog] - New struct `FeatureSettings`
      info	[Changelog] - New struct `ImmutabilitySettings`
      info	[Changelog] - New struct `ItemPathBasedRestoreCriteria`
      info	[Changelog] - New struct `KubernetesClusterBackupDatasourceParameters`
      info	[Changelog] - New struct `KubernetesClusterRestoreCriteria`
      info	[Changelog] - New struct `PatchResourceGuardInput`
      info	[Changelog] - New struct `SecuritySettings`
      info	[Changelog] - New struct `SoftDeleteSettings`
      info	[Changelog] - New field `ExpiryTime` in struct `AzureBackupDiscreteRecoveryPoint`
      info	[Changelog] - New field `Tags` in struct `BackupInstanceResource`
      info	[Changelog] - New field `FeatureSettings` in struct `BackupVault`
      info	[Changelog] - New field `IsVaultProtectedByResourceGuard` in struct `BackupVault`
      info	[Changelog] - New field `SecuritySettings` in struct `BackupVault`
      info	[Changelog] - New field `FeatureSettings` in struct `PatchBackupVaultInput`
      info	[Changelog] - New field `SecuritySettings` in struct `PatchBackupVaultInput`
      info	[Changelog] - New field `BackupDatasourceParametersList` in struct `PolicyParameters`
      info	[Changelog] - New field `TargetResourceArmID` in struct `TargetDetails`
      info	[Changelog]
      info	[Changelog] Total 7 breaking change(s), 75 additive change(s).
    ️❌ azure-sdk-for-js failed [Detail]
    • Code Generator Failed [Logs]Release - Generate from 42e62bef21fca828da9a9a81d845d00aae466877. SDK Automation 14.0.0
      command	sh .scripts/automation_init.sh ../azure-sdk-for-js_tmp/initInput.json ../azure-sdk-for-js_tmp/initOutput.json
      warn	File azure-sdk-for-js_tmp/initOutput.json not found to read
      command	sh .scripts/automation_generate.sh ../azure-sdk-for-js_tmp/generateInput.json ../azure-sdk-for-js_tmp/generateOutput.json
      cmderr	[automation_generate.sh] [ERROR] An error occurred while generating codes for readme file: "specification/dataprotection/resource-manager/readme.md":
      cmderr	[automation_generate.sh] [ERROR] Err: Error: Command failed: autorest --version=3.9.3 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/mnt/vss/_work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/dataprotection/resource-manager/readme.md --use=@autorest/[email protected]
      cmderr	[automation_generate.sh] [ERROR] Stderr: "null"
      cmderr	[automation_generate.sh] [ERROR] Stdout: "null"
      cmderr	[automation_generate.sh] [ERROR] ErrorStack: "Error: Command failed: autorest --version=3.9.3 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/mnt/vss/_work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/dataprotection/resource-manager/readme.md --use=@autorest/[email protected]
      cmderr	[automation_generate.sh] [ERROR]     at checkExecSyncError (node:child_process:861:11)
      cmderr	[automation_generate.sh] [ERROR]     at Object.execSync (node:child_process:932:15)
      cmderr	[automation_generate.sh] [ERROR]     at Object.<anonymous> (/opt/hostedtoolcache/node/16.19.0/x64/lib/node_modules/@azure-tools/js-sdk-release-tools/dist/hlc/generateMgmt.js:39:33)
      cmderr	[automation_generate.sh] [ERROR]     at Generator.next (<anonymous>)
      cmderr	[automation_generate.sh] [ERROR]     at /opt/hostedtoolcache/node/16.19.0/x64/lib/node_modules/@azure-tools/js-sdk-release-tools/node_modules/tslib/tslib.js:115:75
      cmderr	[automation_generate.sh] [ERROR]     at new Promise (<anonymous>)
      cmderr	[automation_generate.sh] [ERROR]     at Object.__awaiter (/opt/hostedtoolcache/node/16.19.0/x64/lib/node_modules/@azure-tools/js-sdk-release-tools/node_modules/tslib/tslib.js:111:16)
      cmderr	[automation_generate.sh] [ERROR]     at Object.generateMgmt (/opt/hostedtoolcache/node/16.19.0/x64/lib/node_modules/@azure-tools/js-sdk-release-tools/dist/hlc/generateMgmt.js:20:20)
      cmderr	[automation_generate.sh] [ERROR]     at /opt/hostedtoolcache/node/16.19.0/x64/lib/node_modules/@azure-tools/js-sdk-release-tools/dist/autoGenerateInPipeline.js:43:34"
      error	Script return with result [failed] code [1] signal [null] cwd [azure-sdk-for-js]: sh .scripts/automation_generate.sh
      warn	Skip package processing as generation is failed
    ️❌ azure-powershell failed [Detail]
    • Failed [Logs]Release - Generate from 42e62bef21fca828da9a9a81d845d00aae466877. SDK Automation 14.0.0
      command	sh ./tools/SwaggerCI/init.sh ../azure-powershell_tmp/initInput.json ../azure-powershell_tmp/initOutput.json
      command	pwsh ./tools/SwaggerCI/psci.ps1 ../azure-powershell_tmp/generateInput.json ../azure-powershell_tmp/generateOutput.json
    • Az.dataprotection [View full logs]  [Release SDK Changes]
    Posted by Swagger Pipeline | How to fix these errors?

    Generated ApiView

    Language Package Name ApiView Link
    Go sdk/resourcemanager/dataprotection/armdataprotection https://apiview.dev/Assemblies/Review/f2bcd65ca7064628a065a0ccd93f784d
    Java azure-resourcemanager-dataprotection https://apiview.dev/Assemblies/Review/7751144e979a4d91919649ac1f9e216b

    Hi @Shashank1306s, Your PR has some issues. Please fix the CI sequentially by following the order of Avocado, semantic validation, model validation, breaking change, lintDiff. If you have any questions, please post your questions in this channel https://aka.ms/swaggersupport.

    TaskHow to fixPriority
    AvocadoFix-AvocadoHigh
    Semantic validationFix-SemanticValidation-ErrorHigh
    Model validationFix-ModelValidation-ErrorHigh
    LintDiffFix-LintDiffhigh
    If you need further help, please feedback via swagger feedback.

    Hi, @Shashank1306s, For review efficiency consideration, when creating a new api version, it is required to place API specs of the base version in the first commit, and push new version updates into successive commits. You can use OpenAPIHub to initialize the PR for adding a new version. For more details refer to the wiki. Or you could onboard API spec pipeline

    Hi, @Shashank1306s your PR are labelled with WaitForARMFeedback. A notification email will be sent out shortly afterwards to notify ARM review board([email protected]).

        "responses": {
    

    put should also return 201 for created, unless this is a proxy resource that can't be created.


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:3634 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 18:01 TimLovellSmith

              "$ref": "#/definitions/CloudError"
    

    Error responses - use common types There are definitions of error responses and details in commontypes types.json that you can use instead of declaring your own. See e.g. ErrorResponse https://github.com/Azure/azure-rest-api-specs/blob/be6cd9ccfcb6ba08c1c206627026eabfbff31fc1/specification/common-types/resource-management/v3/types.json#L300 And ErrorDetail https://github.com/Azure/azure-rest-api-specs/blob/be6cd9ccfcb6ba08c1c206627026eabfbff31fc1/specification/common-types/resource-management/v3/types.json#LL258C21-L258C21


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:3596 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 18:01 TimLovellSmith

          "description": "Gets or sets the exclude resource types property. This property sets the resource types to be excluded during restore.",
    

    e.g. what values are OK?


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:4450 in 112258d. [](commit_id = 112258dc6685908bd6afcf606a42f405a76aa713, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 18:01 TimLovellSmith

          "description": "Gets or sets the PV Restore Mode property. This property sets whether volumes needs to be restored.",
    

    expand acronym


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:6389 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 18:01 TimLovellSmith

          "description": "Gets or sets the LabelSelectors property. This property sets the resource with such label selectors to be included during restore.",
    

    This boilerplate isn't very useful as documentation. Try to focus on explaining the meaning or usage of properties in the descriptions.


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:6382 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 18:01 TimLovellSmith

          "type": "string"
    

    consider '"format": "arm-id"' and https://github.com/Azure/autorest/blob/main/docs/extensions/readme.md#x-ms-arm-id-details


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:7299 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 18:01 TimLovellSmith

        "lastUpdatedTime": {
    

    readonly should be true


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:7308 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 18:01 TimLovellSmith

    "ResourceGuardProxyBaseResource": {
    

    Should some of these base types like ResourceGuardProxyBaseResource be declaring a required discriminator property?


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:7316 in 112258d. [](commit_id = 112258dc6685908bd6afcf606a42f405a76aa713, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 18:01 TimLovellSmith

    "DppResource": {
    

    Refactor for consistency/reviewability

    Can this be replaced and you could instead inherit allOf common-types's ProxyResource?

    Or smaller refactor

    Can you declare DppResource as inheriting allOf common-types' ProxyResource?

    Resource definitions - use TrackedResource or ProxyResource in commontypes Instead of defining your own resource class with required top level properties, 'id', 'type', 'name', and 'location' and 'tags' (for TrackedResource) its recommended to inherit from ProxyResource or TrackedResource in common-types v2 or v3.json. (The v2 definition does NOT include systemData, and is otherwise similar to the v3 one). https://github.com/Azure/azure-rest-api-specs/blob/be6cd9ccfcb6ba08c1c206627026eabfbff31fc1/specification/common-types/resource-management/v3/types.json#L56

    Only recommending if its essentially nonbreaking.


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:5449 in 112258d. [](commit_id = 112258dc6685908bd6afcf606a42f405a76aa713, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 19:01 TimLovellSmith

    "DppBaseTrackedResource": {
    

    Refactor for consistency/reviewability

    Can this be replaced and you could instead inherit allOf common-types's TrackedResource?

    Or smaller refactor

    Can you declare DppResource as inheriting allOf common-types' TrackedResource?

    Resource definitions - use TrackedResource or ProxyResource in commontypes Instead of defining your own resource class with required top level properties, 'id', 'type', 'name', and 'location' and 'tags' (for TrackedResource) its recommended to inherit from ProxyResource or TrackedResource in common-types v2 or v3.json. (The v2 definition does NOT include systemData, and is otherwise similar to the v3 one). https://github.com/Azure/azure-rest-api-specs/blob/be6cd9ccfcb6ba08c1c206627026eabfbff31fc1/specification/common-types/resource-management/v3/types.json#L56

    Only recommending if its essentially nonbreaking.


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:5486 in 112258d. [](commit_id = 112258dc6685908bd6afcf606a42f405a76aa713, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 19:01 TimLovellSmith

    "DppIdentityDetails": {
    

    Refactor if basically nonbreaking

    UserAssignedIdentity, ManagedIdentity - use common types Instead of defining your own managedIdentity or userAssignedIdentity class, I highly recommend finding one to use by $ref under common-types such as https://github.com/Azure/azure-rest-api-specs/blob/be6cd9ccfcb6ba08c1c206627026eabfbff31fc1/specification/common-types/resource-management/v5/managedidentity.json#L50


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:5390 in 112258d. [](commit_id = 112258dc6685908bd6afcf606a42f405a76aa713, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 19:01 TimLovellSmith

    "InnerError": {
    

    Refactor away by using common types, if its basically nonbreaking:

    Error responses - use common types There are definitions of error responses and details in commontypes types.json that you can use instead of declaring your own. See e.g. ErrorResponse https://github.com/Azure/azure-rest-api-specs/blob/be6cd9ccfcb6ba08c1c206627026eabfbff31fc1/specification/common-types/resource-management/v3/types.json#L300 And ErrorDetail https://github.com/Azure/azure-rest-api-specs/blob/be6cd9ccfcb6ba08c1c206627026eabfbff31fc1/specification/common-types/resource-management/v3/types.json#LL258C21-L258C21


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:5883 in 112258d. [](commit_id = 112258dc6685908bd6afcf606a42f405a76aa713, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 19:01 TimLovellSmith

    "OperationResource": {
    

    Refactor away by using common-types if its basically non-breaking (it should be)

    OperationListResult - use common types The OperationListResult type is defined correctly in commontypes types.json. It is recommended to reference and reuse the common definition instead of declaring your own. [Otherwise it is frequently declared incorrectly.]

                "schema": {
                  "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/OperationListResult"
                }
    

    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:6113 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 19:01 TimLovellSmith

        },
    

    ARM recommends enums over booleans as explained here :

    https://armwiki.azurewebsites.net/rp_onboarding/process/api_review_best_practices.html

    Standard guidance is: replace boolean/switch properties with better enum A boolean will forever have two valid values (true or false). A string enum type is always preferred. Also, properties should always provide better values just than True and False. For example two switches "isTypeA" and "isTypeB" should be replaced with one enum "type": [A, B, DefaultType]. Even if you still believe [True, False] are the correct values for a property, you should use a string enum with values [True, False] instead of boolean. Enums are always a more flexible and future proof option because they allow additional values to be added in the future in a non-breaking way, e.g. [True, False, Unknown].


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:6352 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 19:01 TimLovellSmith

        },
    

    describe: what are the valid string values?


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:7357 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 19:01 TimLovellSmith

        "resourceToBeDeleted": {
    

    consider '"format": "arm-id"' and https://github.com/Azure/autorest/blob/main/docs/extensions/readme.md#x-ms-arm-id-details


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:7358 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 19:01 TimLovellSmith

          "type": "string"
    

    consider '"format": "arm-id"' and https://github.com/Azure/autorest/blob/main/docs/extensions/readme.md#x-ms-arm-id-details


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:7359 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 19:01 TimLovellSmith

        }
    

    format: datetime?


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:7370 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 19:01 TimLovellSmith

        },
    

    ARM recommends enums over booleans as explained here :

    https://armwiki.azurewebsites.net/rp_onboarding/process/api_review_best_practices.html

    Standard guidance is: replace boolean/switch properties with better enum A boolean will forever have two valid values (true or false). A string enum type is always preferred. Also, properties should always provide better values just than True and False. For example two switches "isTypeA" and "isTypeB" should be replaced with one enum "type": [A, B, DefaultType]. Even if you still believe [True, False] are the correct values for a property, you should use a string enum with values [True, False] instead of boolean. Enums are always a more flexible and future proof option because they allow additional values to be added in the future in a non-breaking way, e.g. [True, False, Unknown].


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:5977 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 19:01 TimLovellSmith

        "description": {
    

    Looks like readonly should be true based on examples


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:7311 in 112258d. [](commit_id = 112258dc6685908bd6afcf606a42f405a76aa713, deletion_comment = False)

    TimLovellSmith avatar Jan 05 '23 19:01 TimLovellSmith

          "$ref": "#/definitions/DppResource"
    

    Recommend moving to Resource definition from v4 common types.


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:7320 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    mentat9 avatar Jan 06 '23 23:01 mentat9

        "objectType": {
    

    Recommend enum for discriminator properties.


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:5267 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    mentat9 avatar Jan 06 '23 23:01 mentat9

          "readOnly": false
    

    Shouldn't this be readOnly: true?


    Refers to: specification/dataprotection/resource-manager/Microsoft.DataProtection/stable/2023-01-01/dataprotection.json:5270 in 9edb210. [](commit_id = 9edb210d9eecb2a3222e3ec9b653495173cc1f3d, deletion_comment = False)

    mentat9 avatar Jan 06 '23 23:01 mentat9