Microsoft REST API Guidelines
Every single person writing a REST api should have to memorize this table:GET - Return the current value of an object, is idempotent;PUT - Replace an object, or create a named object, when applicable, is idempotent;DELETE - Delete an object, is idempotent;POST - Create a new object based on the data provided, or submit a command, NOT idempotent;HEAD - Return metadata of an object for a GET response. Resources that support the GET method MAY support the HEAD method as well, is idempotent;PATCH - Apply a partial update to an object, NOT idempotent;OPTIONS - Get information about a request, is idempotent.Most importantly, that PUT is idempotent.Credit to arkadiytehgraet for retyping the table to be readable.  Please give them an upvote for the effort.