Skip to documentation
GuidesRetries & errors

Retries & errors

Handle retries, request limits and uncertain outcomes without duplicate actions.

Repeat safely

All write methods require Idempotency-Key: 8–128 characters containing letters, numbers, dots, underscores, colons or hyphens. Reusing the same key with a changed request returns 409. Completed operations return the stored result and Idempotency-Replayed:true.

If execution is still running or its outcome is uncertain, inspect Organization settings → Developers → Activity before starting a new operation. A failed network connection does not prove that a message or financial action failed.

Status codes

StatusMeaningNext action
400Invalid requestFix the named field.
401Invalid, expired or revoked tokenCheck access; create a replacement when needed.
403Missing scope or permissionAsk the organization owner to grant the appropriate access.
404Resource not found or inaccessibleCheck its ID and organization.
409Conflict, in progress or uncertainInspect the operation; keep the same key.
410Event cursor expiredReconcile current resources and use the restart cursor.
422Business or moderation validationCorrect the rejected operation.
429Request limit reachedHonor Retry-After when supplied; use backoff.
503UnavailableKeep the key and check operation history before retrying.

Request tracing and limits

Responses include X-Request-Id; writes also include X-Operation-Id. Keep those IDs when reporting a problem. Limits are 120 requests/token/minute and 480/organization/minute, with 4 simultaneous requests/token and 8/organization.