Blur Setup Guide
Time: 15 minutes | Difficulty: Advanced | Market: NFTs Mode: Full automation (conditional) | API: Smart contract interaction (on-chain) | Docs: blur.io
This guide wires a Blur NFT bot to the Blur smart contracts on Ethereum using the botwir3 runtime. Configure a wallet, connect to on-chain NFT markets, and run automated NFT trading strategies locally.
⚠ Access requirements
Blur does not provide a traditional REST API. Interaction is through smart contracts on Ethereum. This means:
- All transactions (bids, listings, purchases) execute on-chain
- A wallet private key is required for signing transactions
- On-chain activity is permissionless by nature — no API key or approval process
- Marketplace data can be obtained through on-chain event logs or third-party indexers
The user is responsible for understanding the on-chain interaction model and complying with all applicable terms.
Before you start
Verify that automated operation is permitted under Blur's current terms of service before deploying. botwir3 provides tools for building structured automation. The user is responsible for compliance with the platform's terms and all applicable regulations.
Blur Terms of Service | Last verified: May 2026
What you need
- An Ethereum wallet with ETH for gas
- A private key or keystore file for the wallet (stored locally — never shared)
- The botwir3 runtime downloaded and unzipped
- A strategy config file from the builder
- An RPC endpoint (Infura, Alchemy, or a self-hosted node)
Step 1: Configure wallet credentials
Blur operates through smart contracts. There are no API keys — the bot interacts with the blockchain using a wallet private key.
🔒 Security. The wallet private key controls all funds in the wallet. Use a dedicated wallet for bot operations with only the funds allocated to the strategy. The private key is stored in a local config file and is not transmitted to botwir3 or any third party. botwir3 never sees, stores, or has access to wallet credentials.
Step 2: Configure the adapter
Create adapter.json in the bot directory:
{
"adapter": "blur",
"credentials": {
"private_key": "paste-wallet-private-key-here",
"rpc_url": "https://mainnet.infura.io/v3/paste-project-id-here"
},
"collection": "0x-collection-contract-address",
"chain": "ethereum",
"environment": "live",
"rate_limit_ms": 5000
}
collection: The Ethereum contract address of the NFT collection. Find contract addresses on etherscan.io or blur.io.
API keys (RPC endpoint credentials) are stored in a local config file on the machine running the bot. They are not transmitted to botwir3 or any third party. botwir3 never sees, stores, or has access to wallet credentials.
Step 3: Test the connection
botwir3 test --adapter blur
Expected output:
[botwir3] Adapter: blur
[botwir3] Connection: OK (Ethereum mainnet via Infura)
[botwir3] Wallet: 0x1234...abcd
[botwir3] Chain: ethereum
[botwir3] Rate limit: gas-limited
Step 4: Start the bot
botwir3 start --config my-strategy.json
The runtime loads the strategy, computes the spec hash, connects to the Blur smart contracts via the configured RPC endpoint, and begins evaluating signals. The gate function compares proposed actions against the configured spec. The user is responsible for monitoring the bot and verifying execution outcomes.
Rate limits and considerations
| Component | Limit | Notes |
|---|---|---|
| RPC endpoint | Provider-dependent | Infura free tier: 100,000 requests/day. |
| Transaction throughput | ~12 seconds/block | One transaction per block per wallet nonce. |
| Gas costs | Variable | Each bid, listing, or purchase costs gas. |
Common Blur bot configurations include collection bidding (placing bids below floor price across a collection), floor price sniping (buying NFTs listed below a threshold), and automated listing management. All actions and decisions are recorded in the local ledger.
Troubleshooting
| Error | Cause | Fix |
|---|---|---|
CONNECTION_REFUSED | RPC endpoint unreachable | Verify rpc_url in adapter config |
INSUFFICIENT_FUNDS | Wallet balance too low for bid + gas | Fund the wallet with additional ETH |
TRANSACTION_REVERTED | NFT already sold, bid expired, or contract interaction failed | Verify NFT availability. Check Blur contract status. |
MANDATE_INTEGRITY_VIOLATION | Config file modified while bot is running | Stop the bot, verify config, restart |
Related guides
- OpenSea Setup Guide — NFTs, API + on-chain
- Magic Eden Setup Guide — NFTs, multi-chain
- Uniswap Setup Guide — DeFi swaps on Ethereum
One bot. $129. No subscription. No $749/mo platform. → Build for Blur