Also known as: idempotent operation · idempotency key
An operation is idempotent if performing it multiple times produces the same result as performing it once, which allows a client to safely retry a request without risking duplicate side effects.
Idempotency matters because networks are unreliable in a specific way: a client that receives no response cannot distinguish a request that failed from one that succeeded but whose response was lost. Retrying is the only option, and safe retry requires idempotency.
For inherently non-idempotent operations such as creating a charge, the standard solution is an idempotency key — a client-generated identifier the server records, returning the original result rather than repeating the operation on a duplicate request.
API
An API (application programming interface) is a defined contract through which one piece of software provides functionality or data to another, specifying available operations, expected inputs, and returned outputs.
REST
REST (Representational State Transfer) is an architectural style for networked applications in which resources are identified by URLs and manipulated through standard HTTP methods, with each request carrying all context needed to process it.
Rate Limiting
Rate limiting restricts how many requests a client may make within a time window, protecting a service from overload, abuse, and runaway costs while ensuring capacity remains available to other users.
Webhook
A webhook is an HTTP request sent automatically from one system to another when an event occurs, allowing the receiver to react immediately rather than repeatedly polling for changes.