Its mentioned on HTTP Spec that PATCH
is not
idempotent.
The basic definition of idempotent is:
An idempotent HTTP method is a HTTP method that can be called many times without different outcomes
So If we make an HTTP call
PATCH /users/1
{
"username": "dummyUser"
}
No matter how many times we call above HTTP endpoint, it always implies to update the username
of user 1
to dummyUser
.
And that's pretty much same for any PATCH
request to update 1 or many attributes of any resource.
Then why does HTTP Spec specify that PATCH
is not
idempotent?