For Advertisers
An advertiser is an x402 resource operator who wants their endpoint discovered by agents. You create a campaign that targets related API URLs. When agents pay for those APIs through the Dexter facilitator, your endpoint is recommended in the settlement receipt.
Creating a Campaign
1. Register as an Advertiser
Provide your name, wallet address, and network:
2. Create a Campaign
All amounts are in atomic USDC (6 decimals). 1000000 = 1.00 USDC. The admin dashboard at /admin/ads accepts human-friendly USDC amounts.
3. Activate
The campaign immediately starts matching against incoming settlements.
Targeting
Campaigns target by URL pattern. The pattern is matched against the resource URL of each settlement:
| Pattern | Matches |
|---|---|
*jupiter* | Any URL containing "jupiter" |
*solscan* | Any URL containing "solscan" |
https://api.example.com/* | Any URL under that domain |
You can also filter by network (Solana mainnet, Base, etc.) and transport (HTTP, MCP, A2A).
Budget and Bidding
- Budget Total: Maximum lifetime spend for the campaign
- Budget Daily: Maximum spend per day
- Max Bid Amount: Cost per campaign match (deducted from budget on each match)
When the budget is exhausted, the campaign stops matching automatically.
Conversion Tracking
The primary metric for agent-facing recommendations is conversions, not impressions.
A conversion occurs when an agent that received your recommendation subsequently calls your endpoint through the same facilitator. The system records both transaction hashes: the original settlement (where the recommendation was shown) and the conversion settlement (where the agent called your endpoint).
Both hashes are on-chain, publicly verifiable proof that the conversion happened.
View conversions in the admin dashboard at /admin/ads/campaigns/{id} or via:
Pricing Models
| Transport | Model | Description |
|---|---|---|
| HTTP | CPM | Cost per thousand verified impressions |
| MCP | CPA | Cost per conversion (agent calls your endpoint) |
| A2A | CPA | Cost per conversion |
For agent transports, you only pay when the agent actually calls your endpoint. For HTTP, you pay per verified impression (confirmed by beacon).