Skip to content

Removes the 2016 API surface and consolidates specification files#37575

Merged
ComradeCow merged 2 commits intomainfrom
comradecow/subscription-remove-2016-api
Sep 30, 2025
Merged

Removes the 2016 API surface and consolidates specification files#37575
ComradeCow merged 2 commits intomainfrom
comradecow/subscription-remove-2016-api

Conversation

@ComradeCow
Copy link
Member

@ComradeCow ComradeCow commented Sep 18, 2025

ARM (Control Plane) API Specification Update Pull Request

Tip

Overwhelmed by all this guidance? See the Getting help section at the bottom of this PR description.

PR review workflow diagram

Please understand this diagram before proceeding. It explains how to get your PR approved & merged.

spec_pr_review_workflow_diagram

Purpose of this PR

What's the purpose of this PR? Check the specific option that applies. This is mandatory!

  • New resource provider.
  • New API version for an existing resource provider. (If API spec is not defined in TypeSpec, the PR should have been created in adherence to OpenAPI specs PR creation guidance).
  • Update existing version for a new feature. (This is applicable only when you are revising a private preview API version.)
  • Update existing version to fix OpenAPI spec quality issues in S360.
  • Convert existing OpenAPI spec to TypeSpec spec (do not combine this with implementing changes for a new API version).
  • Other, please clarify:
    • Resolving MULTIPLE_API_VERSION error

Due diligence checklist

To merge this PR, you must go through the following checklist and confirm you understood
and followed the instructions by checking all the boxes:

  • I confirm this PR is modifying Azure Resource Manager (ARM) related specifications, and not data plane related specifications.
  • I have reviewed following Resource Provider guidelines, including
    ARM resource provider contract and
    REST guidelines (estimated time: 4 hours).
    I understand this is required before I can proceed to the diagram Step 2, "ARM API changes review", for this PR.
  • A release plan has been created. If not, please create one as it will help guide you through the REST API and SDK creation process.

Additional information

Viewing API changes

For convenient view of the API changes made by this PR, refer to the URLs provided in the table
in the Generated ApiView comment added to this PR. You can use ApiView to show API versions diff.

Suppressing failures

If one or multiple validation error/warning suppression(s) is detected in your PR, please follow the
suppressions guide to get approval.

Getting help

  • First, please carefully read through this PR description, from top to bottom. Please fill out the Purpose of this PR and Due diligence checklist.
  • If you don't have permissions to remove or add labels to the PR, request write access per aka.ms/azsdk/access#request-access-to-rest-api-or-sdk-repositories
  • To understand what you must do next to merge this PR, see the Next Steps to Merge comment. It will appear within few minutes of submitting this PR and will continue to be up-to-date with current PR state.
  • For guidance on fixing this PR CI check failures, see the hyperlinks provided in given failure
    and https://aka.ms/ci-fix.
  • For help with ARM review (PR workflow diagram Step 2), see https://aka.ms/azsdk/pr-arm-review.
  • If the PR CI checks appear to be stuck in queued state, please add a comment with contents /azp run.
    This should result in a new comment denoting a PR validation pipeline has started and the checks should be updated after few minutes.
  • If the help provided by the previous points is not enough, post to https://aka.ms/azsdk/support/specreview-channel and link to this PR.
  • For guidance on SDK breaking change review, refer to https://aka.ms/ci-fix.

@github-actions
Copy link

github-actions bot commented Sep 18, 2025

Next Steps to Merge

✅ All automated merging requirements have been met! To get your PR merged, see aka.ms/azsdk/specreview/merge.

Comment generated by summarize-checks workflow run.

@github-actions github-actions bot added brownfield Brownfield services will soon be required to convert to TypeSpec. See https://aka.ms/azsdk/typespec. ARMReview resource-manager WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required labels Sep 18, 2025
@github-actions
Copy link

github-actions bot commented Sep 18, 2025

API Change Check

APIView identified API level changes in this PR and created the following API reviews

Language API Review for Package
Go sdk/resourcemanager/subscription/armsubscription
C# Azure.ResourceManager.Subscription
JavaScript @azure/arm-subscriptions

@github-actions github-actions bot added the BreakingChangeReviewRequired <valid label in PR review process>add this label when breaking change review is required label Sep 18, 2025
@ComradeCow ComradeCow added the PublishToCustomers Acknowledgement the changes will be published to Azure customers. label Sep 18, 2025
@github-actions github-actions bot added NotReadyForARMReview and removed WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required labels Sep 18, 2025
}
},
"paths": {
"/subscriptions/{subscriptionId}/locations": {
Copy link
Member

@qiaozha qiaozha Sep 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@qiaozha this one seems more recent though? both files are not same. shouldn't they be brought in sync before deleting these?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

also some examples are mutually exclusive between 2 locations for this version.

Copy link
Member Author

@ComradeCow ComradeCow Sep 25, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sandipsh I don't understand what you're looking for. It's more recent because it was added when we created the specification for the 2018-03-01-preview API in #2535. I don't see any comments in that PR for why it came in, which is surprising.

At any rate, the Subscription RP isn't serving the /subscription, /subscriptions/{subscriptionId}, /tenants calls for ARM like this spec says. The Microsoft.Subscription version of /tenants says it returns additional properties that are not returned by ARM today. The Subscription RP has no code to handle calls for a 2016-06-01 API, and its manifest doesn't specify a 2016-06-01 api either. These specs are wrong and need to be cleaned up.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

there are differences as I mentioned above, but as long as these APIs are not already being served by that's a moot point. I am going to approve the PR.

@mikekistler mikekistler added the BreakingChange-Approved-BugFix Changes are to correct the REST API definition to correctly describe service behavior label Sep 19, 2025
@github-actions github-actions bot added WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required and removed NotReadyForARMReview labels Sep 19, 2025
@ComradeCow
Copy link
Member Author

ComradeCow commented Sep 19, 2025

The Avocado Checks are all caused by APIs we previously deprecated. The LintDiff checks are failing on the existing errors for those versions. This PR is ready for review.

@ComradeCow ComradeCow force-pushed the comradecow/subscription-remove-2016-api branch from cafa4cd to 44f04ac Compare September 24, 2025 02:22
@ComradeCow ComradeCow enabled auto-merge (squash) September 24, 2025 15:45
@sandipsh sandipsh added ARMChangesRequested and removed WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required labels Sep 24, 2025
@qiaozha qiaozha added WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required and removed ARMChangesRequested labels Sep 25, 2025
@sandipsh sandipsh added ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review and removed WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required labels Sep 25, 2025
@ComradeCow
Copy link
Member Author

@qiaozha , @sandipsh could one of you apply the Approved-Avocado tag on the PR? The check is failing because of previously deprecated APIs.

]
}
},
"/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Subscription/createSubscription": {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are those new APIs really being supported in this specific version?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They were APIs originally implemented in 2018-11-01-preview. For 2019-03-01-preview we included this path by referencing that 2018-11-01-preview in the readme here. Adding those operations manually to help resolve the MULTIPLE_API_ERROR Avocado error.

@ComradeCow ComradeCow force-pushed the comradecow/subscription-remove-2016-api branch from e3a16d4 to dc1fd23 Compare September 29, 2025 03:01
@ComradeCow ComradeCow disabled auto-merge September 29, 2025 16:46
@ComradeCow ComradeCow force-pushed the comradecow/subscription-remove-2016-api branch from 5653859 to d1e56a0 Compare September 29, 2025 17:44
@github-actions github-actions bot removed the brownfield Brownfield services will soon be required to convert to TypeSpec. See https://aka.ms/azsdk/typespec. label Sep 29, 2025
@ComradeCow
Copy link
Member Author

Adding the Approved-Avocado tag on Ravi Eda's advice as the existing errors are all referencing deprecated APIs. We have to manually suppress these issues because of Azure/avocado#150

@ComradeCow ComradeCow merged commit 43a962b into main Sep 30, 2025
39 of 41 checks passed
@ComradeCow ComradeCow deleted the comradecow/subscription-remove-2016-api branch September 30, 2025 02:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Approved-Avocado ARMReview ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review BreakingChange-Approved-BugFix Changes are to correct the REST API definition to correctly describe service behavior BreakingChangeReviewRequired <valid label in PR review process>add this label when breaking change review is required PublishToCustomers Acknowledgement the changes will be published to Azure customers. resource-manager

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants