Share via

Cannot delete vNet due to a broken SAL!

Christian Hase 25 Reputation points
2026-03-11T07:42:21.0266667+00:00

The vNet/subnet cannot be deleted because Azure reports:

InUseSubnetCannotBeDeleted The subnet is referenced by the SAL above. Attempts to delete the SAL fail because the system marks it as not deletable (allowDelete:false), even though the referenced App Service Plan no longer exists.

This suggests the SAL is in a corrupted or orphaned state.

In my case the resource is on a MSDN subscription without a support plan, so I can't open a proper ticket. I can provide Tenant ID, Subscription ID, etc. via DM or other means.

This case has been reported multiple times by various users, and could only ever be resolved by the Azure Backend Team. See also question 5738081 of which this one is a duplicate. I was instructed by Microsoft External Staff @Praneeth Maddali to create this duplicate before receiving support.

Actions Already Taken

1. CLI and REST Attempts

  • Used az rest --method delete with correct ARM endpoint and API versions.
  • Request failed with: UnauthorizedClientApplication (CLI uses an internal client ID that cannot receive RBAC permissions).
  • Attempted all required RBAC assignments — no effect due to Azure design limitations.

2. Azure Portal REST “Try It”

  • Tried deletion through Microsoft’s REST API “Try It” interface.
  • Result: InUseSubnetCannotBeDeleted because the SAL was not removed.

3. Azure Resource Explorer

  • Navigated to the SAL under: .../serviceAssociationLinks/AppServiceLink
  • Switched to Read/Write mode.
  • Delete option was blocked because SAL shows: "allowDelete": false.

Azure App Service
Azure App Service

Azure App Service is a service used to create and deploy scalable, mission-critical web apps.

0 comments No comments

Answer accepted by question author
  1. TP 155.4K Reputation points Volunteer Moderator
    2026-03-11T08:07:06.6566667+00:00

    Hi Christian,

    Please run command similar to below in Azure Cloud Shell (Bash mode) to purge unused Service Association Link (SAL). Substitute SubscriptionId, Location, SubnetId. Subnet Id can be found by navigating to your subnet in portal and clicking the Copy icon next to Subnet ID

    Azure CLI

    az rest --method POST \
         --uri "/subscriptions/<SubscriptionId>/providers/Microsoft.Web/locations/<Location>/purgeUnusedVirtualNetworkIntegration?api-version=2024-04-01" \
         --body "{'subnetResourceId': '<SubnetId>'}"
    
    

    You should see output similar to below:

    User's image

    Once you have completed the above, try the delete again. Please reply back with your results, whether positive or negative.

    Please click Accept Answer and upvote if the above was helpful.

    Thanks.

    -TP

    2 people found this answer helpful.

0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.