> ## Documentation Index
> Fetch the complete documentation index at: https://docs.spire.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Quick Reference

> DA Builder endpoints, contract addresses, JSON-RPC methods, authentication, errors, and copy-paste examples.

## Summary

DA Builder exposes JSON-RPC endpoints for transaction submission, receipt polling, account balance monitoring, and transaction status tracking.

## RPC Endpoints

| Environment | URL                                                                               |
| :---------- | :-------------------------------------------------------------------------------- |
| Mainnet     | [`https://da-builder.mainnet.spire.dev/`↗](https://da-builder.mainnet.spire.dev/) |
| Sepolia     | [`https://da-builder.sepolia.spire.dev/`↗](https://da-builder.sepolia.spire.dev/) |

Use DA Builder endpoints for supported transaction submission and monitoring methods. Use a standard Ethereum RPC provider for reads, simulations, archive queries, logs, and direct fallback.

## Contract Addresses

| Contract          | Mainnet                                                                                                                  | Sepolia                                                                                                                          |
| :---------------- | :----------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------- |
| GasTank           | [`0x2565c0A726cB0f2F79cd16510c117B4da6a6534b`↗](https://etherscan.io/address/0x2565c0A726cB0f2F79cd16510c117B4da6a6534b) | [`0x18Fa15ea0A34a7c4BCA01bf7263b2a9Ac0D32e92`↗](https://sepolia.etherscan.io/address/0x18Fa15ea0A34a7c4BCA01bf7263b2a9Ac0D32e92) |
| ProposerMulticall | [`0x9ccc2f3ecdE026230e11a5c8799ac7524f2bb294`↗](https://etherscan.io/address/0x9ccc2f3ecdE026230e11a5c8799ac7524f2bb294) | [`0x5132dCe9aD675b2ac5E37D69D2bC7399764b5469`↗](https://sepolia.etherscan.io/address/0x5132dCe9aD675b2ac5E37D69D2bC7399764b5469) |
| TrustedProposer   | [`0xC09f597034f654283a05B058EE1306534b837868`↗](https://etherscan.io/address/0xC09f597034f654283a05B058EE1306534b837868) | [`0x9ccc2f3ecdE026230e11a5c8799ac7524f2bb294`↗](https://sepolia.etherscan.io/address/0x9ccc2f3ecdE026230e11a5c8799ac7524f2bb294) |
| TrustlessProposer | [`0x1b3068A7dC934cCEBF7784cBd9266D80948a98A1`↗](https://etherscan.io/address/0x1b3068A7dC934cCEBF7784cBd9266D80948a98A1) | [`0x51922A1e2A010418bD709870Cd1ff13615070fa8`↗](https://sepolia.etherscan.io/address/0x51922A1e2A010418bD709870Cd1ff13615070fa8) |

## Supported RPC Methods

For the OpenRPC playground, see [`https://da-builder.mainnet.spire.dev/docs`↗](https://da-builder.mainnet.spire.dev/docs).

| Method                             | Auth                         | Parameters                                                        | Output                          | Use this when                                    |
| :--------------------------------- | :--------------------------- | :---------------------------------------------------------------- | :------------------------------ | :----------------------------------------------- |
| `eth_sendRawTransaction`           | Signed raw transaction       | `[rawTransaction]`                                                | transaction hash                | Submit one signed transaction through DA Builder |
| `eth_getTransactionReceipt`        | None beyond request body     | `[transactionHash]`                                               | Receipt or `null`               | Poll the transaction hash                        |
| `eth_sendBundle`                   | Signed transaction in bundle | `[txs, blockNumber]` where `txs` contains one tx                  | transaction hash                | Use simplified bundle submission                 |
| `dab_accountInfo`                  | `X-Flashbots-Signature`      | `[accountAddress]`                                                | `balance`, `outstanding_charge` | Check GasTank balance and pending charges        |
| `dab_transactionStatus`            | Optional token parameter     | `[transactionHash]` or method-specific status params from OpenRPC | Status, cost, tracking details  | Inspect transaction status and savings           |
| `dab_getBatchedTransactionReceipt` | None beyond request body     | `[batchedTransactionHash]`                                        | Receipt or `null`               | Get receipt by transaction hash                  |

`eth_sendRawTransaction` and `eth_sendBundle` do not increment the EOA's normal nonce in the same way as direct independent submission. Validate nonce handling in your transaction sender before production use.

## Authentication For dab\_accountInfo

`dab_accountInfo` requires a Flashbots-style header:

```text theme={null}
X-Flashbots-Signature: <address>:<signature>
```

The signature is an EIP-191 signature over the JSON-RPC request body hash.

## Minimal cURL Examples

### Submit A Raw Transaction

```bash theme={null}
curl -s https://da-builder.mainnet.spire.dev/ \
  -H "Content-Type: application/json" \
  --data '{
    "jsonrpc": "2.0",
    "method": "eth_sendRawTransaction",
    "params": ["0xSIGNED_RAW_TRANSACTION"],
    "id": 1
  }'
```

### Poll A DA Builder Transaction Hash

```bash theme={null}
curl -s https://da-builder.mainnet.spire.dev/ \
  -H "Content-Type: application/json" \
  --data '{
    "jsonrpc": "2.0",
    "method": "eth_getTransactionReceipt",
    "params": ["0xTRANSACTION_HASH"],
    "id": 1
  }'
```

### Check Account Info

```bash theme={null}
curl -s https://da-builder.mainnet.spire.dev/ \
  -H "Content-Type: application/json" \
  -H "X-Flashbots-Signature: 0xYOUR_ADDRESS:0xYOUR_SIGNATURE" \
  --data '{
    "jsonrpc": "2.0",
    "method": "dab_accountInfo",
    "params": ["0xYOUR_ACCOUNT_ADDRESS"],
    "id": 1
  }'
```

## TypeScript Example: Authenticated Account Info

This example uses `ethers v6` and Node.js 18+ `fetch`.

```typescript theme={null}
import { Wallet, getBytes, id } from "ethers";

const rpcUrl = "https://da-builder.mainnet.spire.dev/";
const privateKey = process.env.SIGNER_PRIVATE_KEY!;
const account = process.env.DA_BUILDER_ACCOUNT!;

async function dabAccountInfo() {
  const wallet = new Wallet(privateKey);
  const body = JSON.stringify({
    jsonrpc: "2.0",
    method: "dab_accountInfo",
    params: [account],
    id: 1
  });

  const bodyHash = id(body);
  const signature = await wallet.signMessage(getBytes(bodyHash));
  const authHeader = `${wallet.address.toLowerCase()}:${signature}`;

  const response = await fetch(rpcUrl, {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      "X-Flashbots-Signature": authHeader
    },
    body
  });

  const json = await response.json();
  if (json.error) throw new Error(`${json.error.code}: ${json.error.message}`);
  return json.result as { balance: string; outstanding_charge: string };
}

dabAccountInfo().then(console.log).catch((error) => {
  console.error(error);
  process.exit(1);
});
```

## Internal Links

* [Quickstart](/da-builder/quickstart) - Fast `TrustedProposer` setup.
* [Full Integration Guide](/da-builder/integrate) - Choose proposer path.
* [Monitor Account](/da-builder/monitor-account) - Monitoring workflows.
* [Cost Structure](/da-builder/cost-structure) - Pricing and GasTank charges.
