Skip to navigation

Stream a response the browser fetches

View as Markdown

Send an HTTP request from the browser itself, like fetch, and stream the response body back as it arrives, of any size and with bounded memory at every hop; a slow reader slows the upstream read. The upstream status is in BCTRL-Fetch-Status and its headers (JSON) in BCTRL-Fetch-Headers. A failure before the first byte is an error response; a failure after it aborts the stream, and the Run’s completion Event records unknown. Human control blocks it.

Authentication

AuthorizationBearer

Use Bearer <api-key>.

Path parameters

browserIdstringRequired

Headers

BCTRL-VersionenumOptional
Dated API version. Defaults to the release pinned when the API key was created.
Allowed values:
BCTRL-SpacestringOptional
Select one authorized Space by its opaque ID or unique name. Omission uses the operation default.
BCTRL-Subaccount-IdstringOptional
Optional effective subaccount context for organization API keys. Subaccount API keys are already scoped and cannot use this header to act as another subaccount.
Idempotency-KeystringOptional1-200 characters

Optional retry key for this billable operation. Reusing the same key with the same request replays its stable outcome; credential-bearing results may be freshly issued for the same principal. Reusing it with a different request returns 409.

Query parameters

spaceIdstring or "default"Optional

Request

This endpoint expects an object.
urlstringRequired<=8192 characters
bodystringOptional<=10485760 characters
bodyEncodingenumOptionalDefaults to utf8
Allowed values:
headersobjectOptionalDefaults to {}
methodenumOptionalDefaults to GET
timeoutMsintegerOptional1-60000Defaults to 30000

Response headers

BCTRL-Event-IdstringOptional
The Run Event that accepted the request.
BCTRL-Fetch-HeadersstringOptional

The upstream response headers as a JSON object (at most 16 KiB; larger header sets are cut to the headers that fit).

BCTRL-Fetch-Statusinteger
The upstream HTTP status.
BCTRL-Request-IdstringOptional
Current request identifier, also echoed in errors.
BCTRL-VersionstringOptional
Negotiated dated API version.
Content-TypestringOptional

The upstream Content-Type.

RateLimit-Limitinteger

Evaluated policy limit; zero when no finite policy was evaluated.

RateLimit-Remaininginteger

Remaining policy budget; zero when no finite policy was evaluated.

RateLimit-Resetinteger

Seconds until reset; zero when no finite policy was evaluated.

Response

The upstream response body, streamed as it arrives

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
409
Conflict Error
429
Too Many Requests Error