# Searchers

### Requirements

By participating in the Blink Base FCFS auction, searchers agree to the following:

* **No frontrunning of any kind.** Sandwiching or any other form of frontrunning will result in an immediate ban.
* **Self-submission to the sequencer.** Searchers are responsible for submitting both the target transaction and their own backrun transaction directly to the sequencer. Blink does not submit on your behalf.
* **Attribution via `eth_sendBundle`.** Searchers must send an `eth_sendBundle` request to Blink for attribution purposes. The `bidWei` field is accepted but ignored — it does not affect ordering.
* **Profit kickback of at least 75%.** Searchers must send at least 75% of their profits to the address below as a native ETH transfer within the backrun transaction.
* **Transfers are final and non-refundable.** All transfers made to the specified address are final. No refunds will be issued under any circumstances, including but not limited to user error, incorrect amounts, or mistaken transactions.

**Kickback address:** `0x743be0db30148336A3DB479f19d4e1828b293869`

Example payment transaction: [0x4860d8e...](https://basescan.org/tx/0x4860d8e60d7fc8223ff3ff6adcfa482c50055d7bf8c7fde78ba8e145155a950d)

***

### WebSocket Subscriptions

Please reach out via <contact@blinklabs.xyz> to get set up with an API key.

**WebSocket Connection**

Connect to Blink's WebSocket endpoint:

```
wss://baseauction.blinklabs.xyz/ws/v1/{$API_KEY}
```

**Transaction Subscription**

The V1 WebSocket requires an explicit subscription to begin receiving transaction data. Send the following message after connecting:

```json
{
    "method": "eth_subscribe",
    "params": ["blink_partialPendingTransactions"]
}
```

***

### Submitting Attribution Bundles

Submit bundles to:

```
https://baseauction.blinklabs.xyz/v1/{$API_KEY}
```

Bundles are submitted using the `eth_sendBundle` RPC call. The first element must be the target transaction hash; subsequent elements are your raw backrun transaction(s):

```json
{
    "id": 1,
    "jsonrpc": "2.0",
    "method": "eth_sendBundle",
    "params": [
        {
            "txs": [
                "0xTargetTxHash",  // Target transaction hash (required)
                "0xRawBackrunHex"  // Your backrun transaction in raw hex format (required)
            ],
            "bidWei": "0"          // Ignored in V1 — include any value for compatibility
        }
    ]
}
```

The bundle must contain at least two transactions. The `bidWei` field is parsed for compatibility but has no effect on auction ordering or outcome.

***

### Auction Mechanics

**How it works**

* Blink broadcasts pending transactions to connected searchers via WebSocket.
* Searchers submit their backrun transaction directly to the sequencer alongside the target transaction. This results in a FCFS auction.
* Searchers also send an `eth_sendBundle` to Blink for attribution tracking.
* Transactions are ordered on-chain by the sequencer based on priority fee. Set your backrun priority fee equal to the target transaction's priority fee — transactions with a higher priority fee will result in ejection from the searcher pool.

**Profit Kickback**

* Send at least **75% of your profit** as a native ETH transfer to `0x743be0db30148336A3DB479f19d4e1828b293869` within your backrun transaction.
* This allows Blink to pass profits through to originator sources.

**Timing and Inclusion**

* Each auction window is approximately 50ms. Late backruns will likely revert on-chain due to flashblock timing.
* We strongly recommend colocating in **AWS us-east-1** for optimal latency.

***

### Blink Monitoring

Blink actively monitors for rule violations and will take action accordingly:

* Frontrunning or sandwiching of Blink transactions
* Searchers sending directly to the sequencer without attribution
* Profit kickback percentage (must be > 75%)

Violations may result in:

* Reduced flow
* WebSocket delay
* Complete ban
