Live on Base Mainnet

Infrastructure
for AI Agents
on Base

BAN — Base Agentic Network

Unified API for market data, agent reputation, DEX trading, and alerts. Pay per call with x402 USDC micropayments. No API keys. No rate limits.

api.banprotocol.xyz
$curl api.banprotocol.xyz
GET
x402 · USDC on Base● connected
Capabilities

Five APIs. One Protocol.

Everything an AI agent needs to operate autonomously on Base — from market intelligence to on-chain identity.

Market Data

Real-time prices, liquidity pools, whale activity, OHLCV candles, and prediction markets from Polymarket & Kalshi.

GET /v1/market/price/{token}$0.001 USDC

Agent Reputation

ERC-8004 compliant identity, reputation scoring (0-100), Sybil detection, reviews, and on-chain validation.

GET /v1/agents/{id}/score$0.005 USDC

Configurable Alerts

Price movements, whale transfers, new pool launches, and gas price alerts with polling-based delivery.

POST /v1/market/alerts$0.005 USDC

DEX Trading

Market orders, DCA automation, portfolio tracking, and swap quotes via CDP Smart Accounts on Base.

POST /v1/trading/buy$0.01 USDC

BanPass Subscription

ERC-721 + ERC-4907 NFT passes for tiered access. Bypass x402 fees with higher rate limits and alerts.

POST /v1/subscription/mint$0.01 USDC
x402 Protocol

Pay Per Call. No Keys.

HTTP 402 turns every API call into a self-contained payment. Your agent signs USDC on Base — no accounts, no dashboards, no rate limits.

01

Request

Agent sends a standard HTTP request to any BAN endpoint.

curl -X GET \
  api.banprotocol.xyz/v1/market/price/ETH
02

HTTP 402

Server responds with price, payment address, and network details.

{
  "status": 402,
  "price": "0.001",
  "currency": "USD",
  "network": "base",
  "payment_address": "0x83...913"
}
03

Sign & Pay

Agent signs a USDC payment on Base and generates proof.

X-PAYMENT: eyJhbGciOi...
  // base64-encoded payment proof
  // USDC transfer on Base
04

Get Response

Server verifies payment and returns the data instantly.

{
  "token": "ETH",
  "price": "3847.21",
  "change_24h": "+2.4%",
  "updated_at": "2026-03-21T..."
}
Pricing

Two Ways to Pay

Pay per call with x402 micropayments, or subscribe with a BanPass NFT for bundled access and higher limits.

x402 Per-Call

Pay only for what you use. USDC on Base.

EndpointPrice
GET/v1/market/price/{token}
$0.001
GET/v1/market/pools/{address}
$0.003
GET/v1/market/whales/moves
$0.005
GET/v1/market/candles/{token}
$0.003
GET/v1/agents/{id}/score
$0.005
GET/v1/agents/{id}/sybil-check
$0.01
POST/v1/agents/register
$0.05
POST/v1/agents/feedback
$0.01
POST/v1/trading/buy
$0.01
GET/v1/trading/quote
$0.005
POST/v1/market/alerts
$0.005
POST/v1/subscription/mint
$0.01

BanPass NFT

ERC-721 + ERC-4907 subscription passes. Priced on-chain.

Free

No NFT
Free
  • +5 active alerts
  • +Standard query rates
  • +x402 per-call pricing
  • +Basic market data
  • +Health & stats endpoints

Basic

Token ID 0
USDC/mo
  • +25 active alerts
  • +Higher query rates
  • +Bypass x402 for covered routes
  • +Full market data access
  • +Agent reputation queries
Popular

Pro

Token ID 1
USDC/mo
  • +100 active alerts
  • +Premium query rates
  • +All routes included
  • +DEX trading access
  • +DCA automation
  • +Portfolio tracking

Enterprise

Token ID 2
Custom
  • +Unlimited alerts
  • +Highest rate limits
  • +All features included
  • +Copy trading (coming soon)
  • +ERC-4907 delegation
  • +Priority support
Developer SDK

Ship in Minutes

The Python SDK handles x402 payments, proof generation, and retries automatically. Your agent code stays clean.

agent.py
$pip installban-agent-sdk
1from ban_sdk import BanClient
2 
3# Initialize with your wallet
4client = BanClient(
5 private_key="0x...",
6 network="base"
7)
8 
9# Get real-time price — x402 payment handled automatically
10price = client.market.get_price("ETH")
11print("ETH: " + str(price.price) + " (" + str(price.change_24h) + ")")
12 
13# Check agent reputation (ERC-8004)
14score = client.agents.get_score("0xa3f1...b7c2")
15print("Reputation: " + str(score.composite) + "/100")
16print("Sybil risk: " + str(score.sybil_risk))
17 
18# Execute a trade on Base DEX
19order = client.trading.buy(
20 token="0x4200...0006", # WETH
21 amount_usdc="100.00",
22 slippage=0.5
23)
24print("Filled: " + str(order.amount_received) + " WETH")
25 
26# Set up a whale alert
27alert = client.alerts.create(
28 type="whale_swap",
29 min_amount_usd=500_000
30)
31print("Alert active: " + str(alert.id))
Python 3.10+