Skip to content

Errors, concurrency, and limits

Errors

The generated safe error envelope carries a request ID. Keep that ID for support, and do not include credentials or personal content.

ETags and optimistic concurrency

A strong ETag protects only the named core representation. Notes, reminders, and steps use their independent concurrency contracts. A parent ETag does not silently cover mutable child resources.

Idempotency

Follow each generated operation's idempotency scope, replay, conflict, pending-lease, encryption, and TTL rules. Reusing a key outside its documented scope is not a deduplication guarantee.

Pagination

Ordinary resource collections use deterministic traversal with a fixed sequence high-water, not snapshot isolation. A late commit can be absent from the current traversal and appear on the next one. Event Log polling uses different cursor behavior.

Rate limits

Rate charging follows the class stated by each generated operation. Treat a limit response as an instruction to slow down, and use only retry guidance present in that operation's contract.