The call succeeds. The body is empty.
A 200 with nothing in it still settles the payment. The agent has paid for air and has no one to ask for it back.
Quality control for agent payments
VIGIL watches the endpoints so they don't have to. Every call tested. Every dollar held until it's earned.
Built natively on Base · x402 · ERC-8004
x402 made paying for an API a single HTTP round trip. It did not make the API accountable. Three failures show up constantly, and every one of them costs the agent the full price.
A 200 with nothing in it still settles the payment. The agent has paid for air and has no one to ask for it back.
The endpoint returns something, but not the shape the agent was promised. Downstream steps fail long after the money has moved.
The 402 said one price. The settlement took another. Without a neutral record, the overcharge is invisible and repeatable.
VIGIL sits beside the payment, not inside the API. Watchers measure, the chain remembers, escrow enforces.
Anyone who stakes $VIGIL can run Probes. Probes hit paid x402 endpoints around the clock, exactly like an agent would, and measure four things: uptime, latency, schema validity, and quoted price against charged price. Each result is signed and published onchain as an Attestation.
Attestations are aggregated into an Endpoint Score from 0 to 100, weighted by stake and decayed over time, and written to the ERC-8004 reputation registry on Base. Any agent or developer can read it for free before spending a cent.
An agent routes its x402 payment through the VIGIL Facilitator instead of paying the endpoint directly. USDC sits in escrow while the response is checked for schema, size and deadline. Pass, and the provider is paid. Fail, and the agent is refunded automatically.
Six fictional x402 endpoints, live scores, real timing. Pick one, run the call, and watch USDC lock, the response get checked, and the money release or come back. Nothing touches a chain.
GET price-oracle.example/v1/price
quote 0.02 USDC · score 96 · Reliable
0.00
0.00
0.00
Log is empty. Run a call to begin.
Simulation. No transaction is sent.
Watchers are the people and operators who keep the scores honest. They pay for probes with real USDC, sign what they see, and lose stake if they lie.
| Measure | How | Weight |
|---|---|---|
| Uptime | Did the endpoint answer with a valid 402 and then a response | 30 |
| Latency | Time to first byte and to complete body, per region | 15 |
| Schema validity | Body matches the schema or content type declared in the 402 | 30 |
| Price integrity | Amount charged at settlement equals the quoted amount | 25 |
{
"endpoint": "price-oracle.example/v1/price",
"method": "GET",
"quotedPrice": "0.020000",
"chargedPrice": "0.020000",
"checks": {
"schema": { "pass": true },
"size": { "pass": true, "bytes": 1284 },
"deadline": { "pass": true, "ms": 142 },
"price": { "pass": true }
},
"result": "PASS",
"watcher": "0x51c2…9aE4",
"region": "eu-west",
"block": 24118204,
"timestamp": 1790419200,
"signature": "0x…"
}A bond, not a payment method. Payments are USDC. $VIGIL is what a Watcher puts at risk to be believed.
Required to run probes and earn attestation rewards. No stake, no voice in the score.
Contested results are settled by staked Watchers. Voting weight follows stake.
50% of protocol fees go to active Watchers, in proportion to accepted attestations.
The other 50% of fees buy $VIGIL on the open market and burn it.
Scores are only worth reading if lying about them is expensive. Watchers must have skin in the game so that slashing means something. A signed attestation backed by stake that can be taken away is a claim with a cost attached. Without that bond, a probe result is just a log line, and a colluding Watcher and provider could manufacture reliability out of nothing.
Launch details will be announced only on x.com/VigilOnBase. Any other address is a scam.
Why this chain.