> ## 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.

# Quickstart

> Use DA Builder with TrustedProposer on Ethereum Mainnet or Sepolia.

## Summary

This quickstart shows the fastest way to use DA Builder by delegating a dedicated EOA to `TrustedProposer`, funding GasTank, and sending transactions through the DA Builder RPC endpoint.

## Use This Quickstart When

Use this quickstart when the transaction originator wants to reduce Ethereum transaction cost, improve inclusion, and test DA Builder quickly with `TrustedProposer`.

Top reasons to use this quickstart:

* Reduce Ethereum transaction costs without adding a custom batching system.
* Improve inclusion by submitting raw transactions through DA Builder.
* Add private relay and bundle-style submission with ordering and MEV protection.
* Test DA Builder quickly with a dedicated hot-wallet EOA and minimal application changes.
* Validate GasTank funding, transaction tracking, and transaction hash storage before production rollout.

Do not use this quickstart with an EOA that controls treasury assets, admin permissions, upgrade rights, or broad protocol authority. `TrustedProposer` trusts Spire's DA Builder service with delegated execution for the EOA. Use `TrustlessProposer` instead and evaluate the [Full Integration Guide](/da-builder/integrate).

## Prerequisites

* A dedicated EOA for DA Builder testing.
* ETH on Mainnet or Sepolia for delegation transaction gas.
* ETH to deposit into the Spire GasTank.

## Mainnet Configuration

| Contract or endpoint | Value                                        |
| :------------------- | :------------------------------------------- |
| TrustedProposer      | `0xC09f597034f654283a05B058EE1306534b837868` |
| Spire GasTank        | `0x2565c0A726cB0f2F79cd16510c117B4da6a6534b` |
| DA Builder RPC       | `https://da-builder.mainnet.spire.dev/`      |

## Sepolia Configuration

| Contract or endpoint | Value                                        |
| :------------------- | :------------------------------------------- |
| TrustedProposer      | `0x9ccc2f3ecdE026230e11a5c8799ac7524f2bb294` |
| Spire GasTank        | `0x18Fa15ea0A34a7c4BCA01bf7263b2a9Ac0D32e92` |
| DA Builder RPC       | `https://da-builder.sepolia.spire.dev/`      |

## Step 1: Fund The Spire GasTank

Deposit ETH into the Spire GasTank for the EOA that will use DA Builder. DA Builder charges transaction costs from GasTank instead of taking ETH directly from the EOA during aggregated submission.

| Network | GasTank                                                                                                                                        |
| :------ | :--------------------------------------------------------------------------------------------------------------------------------------------- |
| Mainnet | [`0x2565c0A726cB0f2F79cd16510c117B4da6a6534b`↗](https://etherscan.io/address/0x2565c0A726cB0f2F79cd16510c117B4da6a6534b#writeProxyContract)    |
| Sepolia | [`0x18Fa15ea0A34a7c4BCA01bf7263b2a9Ac0D32e92`↗](https://sepolia.etherscan.io/address/0x18Fa15ea0A34a7c4BCA01bf7263b2a9Ac0D32e92#writeContract) |

After depositing, wait a couple minutes for indexing. Use [`dab_accountInfo`](/da-builder/monitor-account) to confirm that the GasTank balance is available.

## Step 2: Delegate The EOA To TrustedProposer

Delegate the EOA to Spire's `TrustedProposer`. The hosted script requires Node.js. Review the downloaded script before running it with an EOA you control.

```bash theme={null}
bash -c 'curl -s https://da-builder.mainnet.spire.dev/scripts/delegate.js > /tmp/delegate.js && node /tmp/delegate.js'
```

Use Foundry `cast` for a manual Mainnet delegation. For Sepolia, replace `RPC_URL` and `DELEGATE` with the Sepolia values in this page.

```bash theme={null}
#!/usr/bin/env bash
set -euo pipefail

# Required:
#   EOA_PK - private key of the dedicated EOA to delegate

RPC_URL="https://da-builder.mainnet.spire.dev/"
DELEGATE="0xC09f597034f654283a05B058EE1306534b837868"

SIGNED_AUTH="$(cast wallet sign-auth "$DELEGATE" \
  --private-key "$EOA_PK" \
  --rpc-url "$RPC_URL")"

cast send "$(cast az)" \
  --private-key "$EOA_PK" \
  --auth "$SIGNED_AUTH" \
  --rpc-url "$RPC_URL"
```

## Step 3: Send Transactions Through DA Builder

Update the transaction submission endpoint to DA Builder.

| Network | DA Builder RPC                          |
| :------ | :-------------------------------------- |
| Mainnet | `https://da-builder.mainnet.spire.dev/` |
| Sepolia | `https://da-builder.sepolia.spire.dev/` |

DA Builder is not a full Ethereum RPC provider. Route transaction submission and receipt polling to DA Builder. Keep using a standard Ethereum RPC provider for reads, archive queries, logs, simulation, and direct fallback.

### Minimal cURL Submission

Replace `0xSIGNED_RAW_TRANSACTION` with a signed Ethereum transaction from the delegated EOA.

```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
  }'
```

The response result is the transaction hash. Store it for receipt polling and status checks.

## Step 4: Monitor The Transaction Hash

Use `eth_getTransactionReceipt` with the 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
  }'
```

If the call returns a receipt, its `transactionHash` is the onchain transaction that included the DA Builder batch.

Use [`dab_transactionStatus`](/da-builder/quick-reference) for more detailed tracking data when your integration needs status history, costs, or savings details.

## Production Checklist

* Use a dedicated EOA with limited permissions for `TrustedProposer`.
* Monitor GasTank balance with `dab_accountInfo`.
* Store every transaction hash.
* Poll receipts with bounded retries and backoff.
* Keep a standard Ethereum RPC endpoint for direct fallback.
* Move to `TrustlessProposer` if every delegated call must be signed by the account owner.

## FAQ

### Can I use DA Builder as my only RPC provider?

No. DA Builder is a transaction submission and monitoring endpoint, not a full Ethereum RPC provider. Use a standard Ethereum RPC provider for reads and fallback.

### What happens if the GasTank deposit is not visible immediately?

GasTank deposits can take a couple minutes to index. Poll `dab_accountInfo` until the expected balance appears.

### What is the safest way to test TrustedProposer?

Use a dedicated Mainnet hot-wallet EOA with minimal permissions, or use Sepolia for rehearsal. Do not delegate an EOA that controls high-value assets or admin authority.

## Next Steps

* [Full Integration Guide](/da-builder/integrate) - Compare `TrustedProposer` and `TrustlessProposer`.
* [Monitor Account](/da-builder/monitor-account) - Add balance and receipt polling.
* [Quick Reference](/da-builder/quick-reference) - Copy endpoints, addresses, and method examples.
