REST APIs often handle multiple operations on the same resource URL using different HTTP methods. Authorization checks are sometimes implemented per URL, not per URL + method combination. A regular user authorized to GET a resource can DELETE it if the method check is missing.
Developers often add authorization checks when they add a new endpoint. When they later add a new HTTP method to an existing endpoint, the authorization check for the new method is easily forgotten — the route already exists and “has authorization.” The new method inherits the URL’s routing but not necessarily its authorization requirements.
Authorization checks must be specific to the HTTP method being called, not just the URL being accessed. A role check for GET /api/users is not a role check for DELETE /api/users. Each method on each endpoint is a different function and requires its own authorization decision.