For the complete documentation index, see llms.txt. This page is also available as Markdown.

Searchers

Searchers receive live orderflow over WebSocket and submit bundles over the same connection or HTTP.

To request a searcher account, contact us at info@ethgas.com.

Transport
Endpoint

WebSocket

wss://searcher.orderflow.ethgas.com/v1/{API_KEY}

HTTP

https://searcher.orderflow.ethgas.com/v1/{API_KEY}

Receive orderflow

Opening the WebSocket subscribes the session automatically. A client may also send the idempotent subscription request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_subscribe",
  "params": ["ethgas_partialPendingBundles"]
}

The params can also be mevblocker_partialPendingBundles or blink_partialPendingBundles for compatibility to other protocols.

Notifications contain an ordered array of decoded unsigned transactions. This abridged example omits some type-specific fee fields:

{
  "jsonrpc": "2.0",
  "method": "eth_subscription",
  "params": {
    "subscription": "0x...",
    "result": [{
      "chainId": "0x1",
      "to": "0x...",
      "value": "0x0",
      "data": "0x...",
      "nonce": "0x1",
      "gas": "0x5208",
      "type": "0x2",
      "hash": "0x...",
      "from": "0x..."
    }]
  }
}

Fanout is live-only: open the WebSocket before the originator submits. Missed notifications are not replayed.

If the result array contains only 1 object, it is a transaction only. If it contains more than 1 object, that is a bundle. You only need to reference the hash of the last transaction in your backrun bundle.

eth_unsubscribe is not supported. To stop receiving orderflow, close the WebSocket connection.

Submit a backrun

Use the last transaction hash from the notification as the first txs entry, followed by your signed transaction(s):

The response returns a local bundleHash. The engine expands a valid originator reference server-side and adds the applicable refund fields before builder submission.

txs accepts 0–100 entries. An empty txs array is a cancellation by replacementUuid and behaves identically to eth_cancelBundle; in this case replacementUuid is required and no other field is permitted.

replacementUuid is optional for submission. When used, increase either replacementSeqNumber or its alias replacementNonce; do not send both.

minTimestamp is an optional unsigned Unix timestamp in seconds. It must not be later than the bundle's intake time; future values are rejected rather than queued.

Cancel replacements

A successful intake response is 200; it confirms cancellation admission, not builder completion. An empty txs bundle with only replacementUuid is also a cancellation.

Connection behavior

Respond to pings promptly. Sessions close after 24 hours and should reconnect. Authorization changes close the connection, and slow readers may be disconnected when their outbound queue fills.

Last updated