Skip to main content

Response signals and errors

This is the reference for what Lasso Cloud adds to responses and the errors it returns. Every error Lasso originates names its fix in next_action. For how to use these signals together, read routing evidence.

Response headers

lasso_meta

Add ?include_meta=body for a top-level lasso_meta object, or ?include_meta=headers for the x-lasso-meta header. Lasso Cloud returns: Read serving access and fallback from the x-lasso-access and x-lasso-fallback headers. Managed providers appear under public aliases; Custom profiles show your provider names. The routing engine’s full field list, including block protection fields, is in request metadata. WebSocket callers add "lasso_meta": "notify" to a request for a follow-up lasso_meta notification.

RPC errors

RPC errors stay standard JSON-RPC. Errors Lasso originates carry error.data.code, error.data.next_action and error.data.retryable. A retryable error with Retry-After is safe to repeat as is after the wait. These are the requests Lasso answers itself, before routing: Errors from providers pass through unchanged. When every eligible provider fails, the final JSON-RPC error arrives in an HTTP 200 response. An eth_getLogs range a provider refuses as too large returns -32005 with data.code: "log_range_limit"; split the range and retry.

WebSocket close reasons

Revoking a key, or the end of a rotation overlap, closes sockets using that secret.

Management API errors

Management errors use one envelope:
Exact response schemas are in openapi.json.

Next