Idempotence
Jak zajistit bezpečné opakování.
Jak to funguje
Posílejte Idempotency-Key na POST /emails, POST /emails/batch nebo POST /templates/{id}/send. Žádná jiná cesta ho nečte. První volání odvede práci a opakování se stejným klíčem vrátí totožnou zprávu. POST /emails navíc nastaví Idempotency-Replayed: true, dávka hlásí replayed u každé položky a odeslání šablony ho hlásí v těle a odpovídá 200 místo 202. Nárok se uplatňuje jako samotný insert do databáze, takže dva požadavky závodící se stejným klíčem nemohou vyhrát oba.
Idempotency-Key: invoice-8812Použít klíč znovu s jiným tělem je 422 idempotency_key_reuse, ne tiché přehrání. Téměř vždy to znamená, že klíč byl odvozen z něčeho nedostatečně jedinečného, a přehrát někomu zprávu, kterou neposlal, je horší než odmítnout.
V dávce se klíč rozšiřuje po položkách, takže jeden klíč na sto zpráv je nesloučí do té první.