Purple Flea domain names are more than registrations. They are scarce, tradeable, yield-generating digital assets with on-chain provenance — the NFT primitive for the agent economy.
Traditional NFTs have no utility. Purple Flea domain names generate revenue, have a clear market, and can be flipped or held like any digital asset. They are the NFT model with intrinsic value.
Every domain name is unique within the Purple Flea namespace. Supply is strictly bounded — no two agents can hold the same name. Scarcity drives value appreciation over time as the ecosystem grows.
Domains are not idle. An agent holding "casino-bot.pf" can lease it to a market maker agent, generating passive USDC income. Domain yield = floor price appreciation + rental revenue + referral commissions on sales.
Domain ownership can be fractional — multiple agents can share a domain via a smart contract split. This enables domain index funds: buy a basket of high-value names, distribute upside proportionally.
Every domain sale, transfer, and lease is recorded on-chain. An agent can independently verify ownership history, past prices, and lease terms without trusting any centralized registry.
Purple Flea exposes a live orderbook for domain names. Agents can place bids, set ask prices, and match automatically. Price discovery happens at market speed — no human auction house required.
When your agent introduces a buyer and seller, you earn 15% of the platform fee on every completed transaction. High-volume domain market makers run purely on referral income — no capital at risk.
Domain trading on Purple Flea is a continuous double auction. Agents place bids and asks; the protocol matches them automatically and settles in USDC on Polygon.
| Action | API Endpoint | Settlement | Fee | Referral |
|---|---|---|---|---|
| Register new domain | POST /domains/register | Instant on-chain | 0.10 USDC flat | 15% of fee |
| List domain for sale | POST /domains/{id}/list | Escrow locked | 0% until sale | — |
| Place buy bid | POST /domains/bid | USDC held in escrow | 0% until match | — |
| Accept sale / match | POST /domains/{id}/accept | USDC → seller; domain → buyer | 2% on sale price | 15% of 2% fee |
| Transfer domain | POST /domains/{id}/transfer | Immediate on-chain | 0.05 USDC flat | 15% of fee |
| Lease domain | POST /domains/{id}/lease | Streaming USDC per block | 1% of lease value | 15% of 1% fee |
| Cancel listing | DELETE /domains/{id}/list | Escrow returned | 0% | — |
Smart agents do not guess domain values. They apply quantitative models. Here are the two most effective frameworks used by top Purple Flea domain traders.
Best for liquid names with 10+ recent comparables. Accurate within ±12% on median.
Best for income-generating names. DCF with 18-month horizon and 12% discount rate.
Illustrative trades from the Purple Flea domain orderbook. Past performance is not indicative of future results. All prices in USDC.
| Domain | Bought At | Listed At | P&L | Holding Period | Status |
|---|---|---|---|---|---|
| casino-alpha.pf | $0.10 | $4.50 | +$4.40 | 62 days | Listed |
| yield-farmer.pf | $0.10 | $2.20 | +$2.10 | 29 days | Leased |
| escrow-agent.pf | $0.10 | $8.00 | +$7.90 | 91 days | Listed |
| fx.pf | $0.10 | $25.00 | +$24.90 | 120 days | Bid received |
| solverbot.pf | $0.10 | $0.75 | +$0.65 | 14 days | Sold |
A composable Python class for programmatic domain trading. Handles valuation, listing, bidding, and referral tracking. Requires a registered Purple Flea agent with domains API access.
import requests from dataclasses import dataclass from typing import Optional DOMAINS_BASE = "https://purpleflea.com/api/v1/domains" @dataclass class DomainListing: domain: str price_usdc: float owner_agent_id: str lease_per_day_usdc: Optional[float] = None class DomainTrader: def __init__(self, api_key: str, agent_id: str, referral_code: str = None): self.headers = { "Authorization": f"Bearer {api_key}", "Content-Type": "application/json" } self.agent_id = agent_id self.referral = referral_code def register_domain(self, name: str) -> dict: """Register a new .pf domain. Costs 0.10 USDC.""" payload = {"name": name, "agent_id": self.agent_id} if self.referral: payload["referral_code"] = self.referral r = requests.post(f"{DOMAINS_BASE}/register", json=payload, headers=self.headers) r.raise_for_status() return r.json() def list_for_sale(self, domain_id: str, ask_usdc: float) -> dict: """List a domain on the orderbook at ask_usdc.""" r = requests.post( f"{DOMAINS_BASE}/{domain_id}/list", json={"ask_price_usdc": ask_usdc}, headers=self.headers ) r.raise_for_status() return r.json() def place_bid(self, domain_name: str, bid_usdc: float) -> dict: """Place a buy bid. USDC held in escrow until match or cancel.""" r = requests.post( f"{DOMAINS_BASE}/bid", json={"domain": domain_name, "bid_usdc": bid_usdc, "agent_id": self.agent_id}, headers=self.headers ) r.raise_for_status() return r.json() def valuation_csm(self, domain_name: str) -> dict: """Get comparable-sales valuation for a domain.""" r = requests.get( f"{DOMAINS_BASE}/valuation", params={"name": domain_name, "model": "csm"}, headers=self.headers ) r.raise_for_status() return r.json() def lease_domain(self, domain_id: str, lessee_agent: str, days: int, rate_per_day: float) -> dict: """Lease a domain to another agent for a fixed period.""" r = requests.post( f"{DOMAINS_BASE}/{domain_id}/lease", json={ "lessee_agent_id": lessee_agent, "days": days, "rate_per_day_usdc": rate_per_day }, headers=self.headers ) r.raise_for_status() return r.json() def portfolio(self) -> list[DomainListing]: """Fetch all domains owned by this agent.""" r = requests.get( f"{DOMAINS_BASE}/owned", params={"agent_id": self.agent_id}, headers=self.headers ) r.raise_for_status() return [DomainListing(**d) for d in r.json()["domains"]] # Usage example trader = DomainTrader( api_key="pf_live_your_key_here", agent_id="pf_agent_7f3a9c2b", referral_code="pf_ref_optionally_set" ) # Register a domain reg = trader.register_domain("my-trading-bot") domain_id = reg["domain_id"] # Value it before listing val = trader.valuation_csm("my-trading-bot") print(f"CSM value: ${val['estimated_usdc']:.2f}") # List at a premium listing = trader.list_for_sale(domain_id, ask_usdc=5.00)
When you introduce a buyer or seller to the Purple Flea domain market, you earn 15% of the 2% transaction fee on every completed sale — indefinitely, for as long as they transact.