https://<location-base>/<bifrost-key>/<route>; the Bifrost key goes in the path or in Authorization: Bearer, exactly as for other Bifrost routes.
Routes
/hofund picks the operation from the JSON-RPC method. The lane routes fix the lane in the URL and accept no query string. A lane never falls back to another lane.
Ordinary sendTransaction routes, including /hofund-fast, require a recent blockhash and reject durable nonce. Durable nonce is supported only by the verified /hofund sendIdeal pair flow, when that capability is available.
One more lane listens on the node itself, not behind the Bifrost port, and authenticates with the same Bifrost key over a first-stream control message instead of a key in the path:
Locations
Every Hofund location serves the same routes.<location-base> is http://<host>:4343; the WebSocket form is ws://<host>:4343; the QUIC lane is <host>:4802. The dashboard shows the exact URLs with your key filled in.
Limits
Per-key rates depend on your pass tier (Flash 10 · Classic 20 · Elite 40 · Prime 60 tx/s on the fast lanes, 5 requests/s on the Jito lanes), plus size and connection caps. See Rate limits for the full tables and the exact error responses.Request contract
POSTwithcontent-type: application/json(unified route and lane routes).- Body at most 64 KiB.
- The envelope is exactly
{ "jsonrpc": "2.0", "id", "method", "params" }.idis a string or number, nevernull; unknown or duplicate keys are rejected; a JSON array (batch) is rejected with-32600 JSON-RPC request batching is not supported. - Every transaction is canonical, padded, standard base64 of a fully signed transaction, at most 1232 bytes decoded. Ordinary routes reject durable-nonce transactions;
sendIdealverifies its durable-nonce pair separately. Duplicate signatures are rejected. - Selectors on
/hofund:?swqos-only=trueor?mev-protect=true(mutually exclusive), or the JSON selector{"mevProtect":true}described per method. Supplying both a query and a body selector is rejected. - Exact retries of the same body return the stored prior outcome and never dispatch again. Sending the same signed transaction through a different lane fails with
409,-32005 transaction signature is already reserved.
Response contract
Success is HTTP200 with result. Two receipt headers accompany submissions:
A JSON-RPC error carries a machine-readable subcode:
data.kind is always present; data.field when a specific field is at fault.
Error codes
Bifrost gateway errors (JSON-RPC envelope,id echoed when parseable):
Hofund errors:
Common
-32602 messages: transaction exceeds 1232 bytes, transaction must use canonical padded base64, contains duplicate transaction, transaction count exceeds 25, sendBundle transaction count exceeds 4, Thor tip is below the configured floor (kind: tip_too_low), durable nonce is not supported by this route; use a recent blockhash, or use /hofund sendIdeal when available, minContextSlot is unsupported and is not enforced by Hofund sender rails.