Skip to main content
Sandbox is the authenticated authoring and ad-hoc execution surface. Its contract is separate from both the Platform API and customer-facing Endpoint invocation. Read instance.endpoints.sandbox from GET /api/v1/me or use the URL exposed by the platform. The Node.js SDK and CLI discover it automatically.

HTTP surface

The exact roles are operation-specific. Component authoring routes require component access; stored execution and SDK dispatch also accept the relevant automation or endpoint execution roles.

Debug transient TypeScript

Transient payloads accept 1–1,000 elements. The default timeout is 10 seconds and the accepted maximum is 600 seconds. Memory defaults to 128 MB and is bounded at 2,048 MB; instance policy can impose a lower effective limit.

Execute saved code

Omit componentVersion to use the normal resolved version for that execution mode, or provide it when a workflow intentionally verifies an exact low-code revision.

Streaming contract

Streaming debug and execute use text/event-stream. Consumers must parse named events rather than assuming every frame is a message:
  • log — structured api.log(...) output;
  • result — the single successful terminal payload;
  • error — the single failed terminal payload;
  • done — completion marker sent before close.
A failed execution emits error, then done with error: true, and does not emit a normal result. Comment frames are heartbeats and can be ignored.
The stream is not durable history. Persist the returned Execution ID and use platform execution/history views for later diagnosis.
Disconnect normally requests cooperative cancellation. A remote write accepted before disconnect may still complete. backgroundProcessing is an explicit debug-stream option for workflows that should continue after the client leaves.

Prefer supported clients

Use revo component debug --stream for local component work and @revoengine/sdk for runtime calls. Direct /v1/runtime/call integration requires contract-revision negotiation, call correlation, batch limits, and binary/date wire encoding; it is not a general-purpose JSON endpoint.
Last modified on September 5, 2026