FAQ resource for What does idempotency mean in APIs?.
Answer
An operation is idempotent if performing it multiple times has the same effect as performing it once. In HTTP, GET, PUT, and DELETE are defined as idempotent while POST generally is not, which matters when a network error makes a client unsure whether its request succeeded. Designing idempotent endpoints lets clients safely retry without creating duplicate side effects such as double charges or duplicate records. For inherently non-idempotent operations, an idempotency key lets the server deduplicate retries.