Een operatie is idempotent als je hem meerdere keren kunt uitvoeren met steeds hetzelfde eindresultaat als wanneer je hem één keer uitvoert. Het draait niet om het aantal uitvoeringen, maar om de eindtoestand.
jan aanmaakt als hij niet bestaat, en niets doet als hij al bestaatConfiguratiebeheersystemen zoals Ansible zijn idempotent: je kunt dezelfde playbook meerdere keren draaien en het systeem bereikt altijd de gewenste toestand zonder dubbele wijzigingen.
In HTTP is GET idempotent (ophalen verandert niets), PUT is idempotent (zet resource op een bepaalde waarde), maar POST is dat niet altijd — het kan elke keer een nieuw record aanmaken.