Skip to main content
Public API failures use one JSON envelope:
Branch on error.code, not the human-readable message. Include requestId when contacting Floral support.

Request IDs

You may send an X-Request-ID header of up to 128 characters using letters, digits, ., _, :, /, and -. Floral echoes a valid ID in the response header and error envelope; invalid values are replaced with a generated ID. Generate a unique value per logical request and retain it in your integration logs.

Safe retries

  • Retry 429 and transient 5xx responses with exponential backoff and jitter.
  • Retry reads when the operation remains useful to your caller.
  • Retry a write automatically only when it requires Idempotency-Key, and reuse the exact key, method, path, and body.
  • Do not retry 412 VERSION_CONFLICT until you reload and reconcile the current resource.
See Reliability and retries for rate-limit classes, idempotent replay, optimistic concurrency, and audit logging.