Skip to main content
Every Bifrost route is one path on a location base URL:
Copy the complete URL from Endpoints → Bifrost. Bifrost forwards your request body to the selected provider unchanged and returns the provider’s response unchanged. Each route takes the request its provider’s own API defines, without a provider API key.

Authentication

GET or HEAD /healthz on the bare base URL needs no key and returns {"status":"ok","service":"Bifrost Transaction Proxy"}. A key-prefixed /<key>/healthz returns 401. Use /healthz on a kept-alive connection to hold it open between sends; the public listener closes idle connections after about 30 seconds.

Route index

The dashboard shows the provider routes enabled for your selected access and location.

What Bifrost checks before forwarding

Bifrost decodes each transaction in the body and rejects the request with 400 when:
  • the transaction count is outside the route’s bound in the table above;
  • a transaction uses invalid encoding for the selected route or does not decode as a Solana transaction;
  • a LunarLander binary batch member is outside 66–1232 bytes;
  • an Apex transaction exceeds 1232 bytes for legacy/v0 or 4096 bytes for v1;
  • the request does not meet the provider’s route-specific tip rule, such as a tip on every independent transaction or in the required bundle member (see each provider page).
The 400 body names the reason:
Reason codes: invalid_json, invalid_params, missing_field, unsupported_route, unsupported_method, unsupported_content_type, invalid_base64, invalid_transaction, invalid_transaction_size, invalid_binary_batch, invalid_tip_address, invalid_transaction_count, tip_too_low, priority_fee_too_low. bloXroute and BlockRazor JSON routes return the same message under a top-level error object; plain-text routes return it as text.

Errors Bifrost returns itself

Bifrost subscriptions count each submitted transaction, including each batch or bundle member, against the access’s TPS allowance. Authenticated Apex utility methods do not consume transaction quota. Provider limits also apply; provider 429 responses pass through. Bifrost never retries and never falls back to another provider.

Reading a response

A 2xx means Bifrost completed the HTTP call to the provider. Parse the body: a JSON-RPC error can arrive inside a 200. A returned signature means the provider accepted the transaction, not that it landed. Track the signature through ThorEdge RPC until it reaches your commitment or its blockhash expires.

Next steps