Skip to main content
Error handling depends on the surface. Do not assume every RevoEngine response uses the same envelope.

Platform API errors

Most control-plane failures include an HTTP status, timestamp, and message. Validation and lifecycle operations may add a stable code, field details, or operation-specific metadata.

Endpoint runtime errors

Endpoint authors control part of the public contract. A component can deliberately return a status and body with api.throw(...), so an application should follow that Endpoint’s generated OpenAPI document. Platform-level runtime failures commonly use:

Sandbox streams

For /v1/debug/stream and /v1/execute/stream, transport success does not imply execution success. A runtime failure is an error event followed by done with error: true. A successful stream has one result event followed by done. If a stream or connection ends before a terminal event, treat the outcome as unknown when code could have mutated external state.

SDK errors

All SDK-specific errors extend RevoError and expose code, retryable, indeterminate, and optional statusCode/details.

Safe retry checklist

  1. Classify the operation as read-only, idempotent, or non-idempotent.
  2. Check durable state when dispatch may have reached the server.
  3. Reuse a business idempotency key where the target supports one.
  4. Retry only failures documented as retryable, with bounded exponential backoff and jitter.
  5. Stop on validation, authentication, authorization, and version conflicts until corrected.
For support, record the UTC timestamp, method/path, status, resource or execution identifier, and the x-revo-oid and x-revo-ver response headers. Redact tokens, secrets, signed URLs, and sensitive payload values.
Last modified on September 5, 2026