Azure / Azure/azure-rest-api-specs
[BUG] `Microsoft.Maps` @ `2023-06-01` - `PUT` and `DELETE` operations for Accounts should be marked as LRO
- Dominant language
- TypeSpec
- Stars
- 3.1k
- Forks
- 5.9k
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 444
Description
### API Spec link
https://github.com/Azure/azure-rest-api-specs/blob/89fc547a195b7202ac9731b6dc17596776b12185/specification/maps/resource-manager/Microsoft.Maps/stable/2023-06-01/maps-management.json#L81-L93
### API Spec version
2023-06-01
### Describe the bug
The `PUT` and `DELETE` methods in the spec for Maps are not marked as Long Running Operations
However creating a Maps Account returns a `provisioningState` of `Updating`
```
...
"properties": {
"uniqueId": "36b85746-cbda-45e5-8f60-7090a13ccc3c",
"provisioningState": "Updating",
...
```
And attempting to delete results in the following error:
`unexpected status 409 (409 Conflict) with error: InvalidProvisoningState: The current provisioningState must transition to a terminal state before the resource can be updated.`
I believe these operations should be Long Running operations and return an async URL in the header that we can poll on to know when a Maps Account resource is ready to be updated or deleted.
### Expected behavior
When creating a Maps Account I should receive an async operation URL in the header that will allow me to poll the provisioning status of the resource.
### Actual behavior
Creating a Maps Account returns a 201 with no async operation operation URL in the header for us to poll on. Issuing an update to the account or a delete right after results in a 409 error.
### Reproduction Steps
Create a Map Account then issue an update or a delete immediately afterwards.
### Environment
_No response_
Contributor guide
Research direction
Open specification/maps/resource-manager/Microsoft.Maps/stable/2023-06-01/maps-management.json at the linked operations around lines 81-93 and compare them with other Azure Maps long-running operations. Confirm the expected Azure LRO markers for PUT and DELETE, then verify that the operations expose polling metadata and that the spec remains valid.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure, openapi
- Domain
- api
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 35/100