Any write can be retried safely by sending an idempotency key. The first request with a given key executes; later ones return the original response rather than acting twice.
POST /v1/watches Idempotency-Key: 6b1f0f2c-1c1e-4e0a-9f6a-2f1b8b2c9a11
Keys are scoped to your account and remembered for 24 hours. Replaying a key with a *different* body is an error — that indicates a bug, not a retry. Reads do not need keys; they are already idempotent.
Network timeouts. When a write times out you cannot know whether it landed; with an idempotency key you simply send it again and find out.