why it exists
Raw feeds do not stop bad actions. Gates do.
Prediction-market agents already see price, depth and momentum. The failure is acting anyway when the market is disputed, the rule is ambiguous, the source hierarchy is weak, the book is stale, or the requested size no longer fits conservative public capacity.
Do Not Act puts a machine-readable gate immediately before the execution layer: proceed, slow down, or stop with evidence.
public contract
One decision contract before trade().
GET /v1/dispute/{venue}/{market_id}Converts UMA lifecycle and dispute history into stop/go evidence.
GET /v1/resolution-risk/{venue}/{market_id}Scores settlement-rule ambiguity, source hierarchy and mechanism risk.
GET /v1/preflight/{venue}/{market_id}Applies requested side, notional and slippage policy to live public-book capacity.
WEBSOCKET /v1/preflight/streamKeeps a paid Risk Gateway verdict live for agents that cannot afford slow manual polling.
WEBSOCKET /v1/alerts/streamStreams watchlist alert snapshots for operators that need a reconciliable feed.
GET /v1/dispute-history.csvExports paid dispute-ledger history for research, reconciliation and post-run audit.
GET /x402/v1/dispute/{venue}/{market_id}Lets agents buy one dispute diagnostic through standard CDP/x402 for 0.01 USDC, with tx-hash fallback for custom clients.
The response vocabulary is built for enforcement, not dashboards: READY, CAUTION, DO_NOT_ACT, or INSUFFICIENT_EVIDENCE. Reason codes show the blocker and the evidence needed to change the answer.
For trading systems where latency matters, WebSocket snapshots reduce integration overhead versus repeated polling. Do Not Act stays diagnostic and read-only; execution remains in the caller.
live example object
Dispute history becomes an enforceable stop.
Every response packages source evidence, verdict, reason codes and next evidence together so the agent can halt with context.
{
"schema_version": "donotact_dispute_v1",
"venue": "polymarket",
"market_id": "580810",
"verdict": "DO_NOT_ACT",
"lifecycle_state": "proposed",
"status_history": ["proposed", "disputed"],
"has_disputed_history": true,
"no_trade_reasons": [
{
"class": "R8_RESOLUTION_AMBIGUITY",
"code": "UMA_DISPUTE_DETECTED",
"advisory": false
}
],
"what_would_change_this": [
"dispute resolved or clarified",
"review authenticated dispute ledger"
],
"not_advice": true
}
proof / resolved cases
Evidence your agent can defend later.
These cases show the control layer on real disputed markets: stop conditions, source-linked evidence and signed records your agent can preserve before the market narrative changes.
Every public proof feed is covered by a signed daily Merkle root at /proof-root.json, with public verification through POST /v1/proof-root/verify.
MicroStrategy purchase Bitcoin, Aug 26-Sep 1
Diagnostic record -> disputed UMA history -> resolved No.
Signed JSONMicroStrategy purchase Bitcoin, Jul 1-7
Disputed resolution arc -> signed stop-condition proof -> resolved No.
Signed JSONOutlast: The Jungle top Netflix show
Disputed resolution arc -> signed stop-condition proof -> resolved No.
Signed JSONTrump says "Fight" during UFC 250
Disputed resolution arc -> signed stop-condition proof -> resolved Yes.
Signed JSONUse these as source-linked operational proof cases. Open all proof cases, inspect the pre-action evidence feed, or use the launch proof pack.
reason taxonomy
Every rejection becomes a machine-readable cause.
R8_RESOLUTION_AMBIGUITYsubjective wording, unclear source hierarchy, disputed historyR1_WALLET_BINDINGaccount class, signature type, protocol versionR2_ALLOWANCE_BALANCEbalance, allowance, asset wrapper readinessR3_TICK_PRECISIONtick size, price precision, payload validityR4_METADATA_READINESSmarket state, negative-risk and metadata completenessR5_MARKET_STATEactive, closed, paused, settled or degraded venue stateR6_BOOK_STALENESS_LIQUIDITYspread, depth, book age, slippage estimateR7_EXIT_LIQUIDITYexit-side constraints in the Risk Gateway extensionR9_INSUFFICIENT_EVIDENCEcomponent evidence gaps that force fail-closed behaviorR10_CLIENT_POLICYcaller policy constraints such as max slippage or conservative modeR11_CROSS_VENUE_DIVERGENCEreserved for future cross-venue evidence mismatchproof surface
Every verdict should leave a receipt.
Each authenticated diagnostic response carries a receipt that can be verified offline against the public receipt key. Operators can prove what the API returned before the market evolved.
The moat is the maintained enforcement layer: dispute lifecycle, ambiguity, public-book capacity, requested size and receipt proof packaged into one decision your agent can enforce and your operator can audit.
integration guardrail
Risk Gateway applies requested size to the answer.
Preflight catches public venue blockers such as metadata readiness, precision, venue state, stale books, and liquidity gaps. With Risk Gateway v1.2, agents pass side, notional, slippage tolerance, policy and horizon.
The response adds decision, component_scores, blocking_reasons, warning_reasons, risk_score, liquidity_confidence_score, and safe_operating_limits. Safe size is computed from live CLOB depth, not a Gamma-only flag. Reading one field is easy; enforcing size-aware stop/go before capital moves is the product.
resolution risk
Settlement rules are the risk layer many agents skip.
Resolution ambiguity is operational risk. The API surfaces ambiguity patterns such as subjective terms, undefined edge cases, venue-internal resolution, weak source hierarchy, and missing appeal mechanisms.
An agent can be technically ready to submit and still face unacceptable resolution risk. Do Not Act keeps those dimensions separate.
agent-readable presence
Designed for agents before dashboards.
Use /llms.txt for compact product context, /openapi.json for the contract, and the docs pages for human review. Agents can wire DO_NOT_ACT and INSUFFICIENT_EVIDENCE directly into halt paths.
Remote MCP is live at /mcp. One-off machine-paid dispute diagnostics are live at /x402/v1/dispute/{venue}/{market_id} and indexed by CDP Bazaar after standard x402 settlement.
current access
Create a key. Put the gate before capital moves.
Account-first checkout issues the API key automatically, links billing to the account, and keeps key recovery simple.
Free: start without a card and run the gate with 1,000 included risk checks across dispute, resolution-risk and preflight diagnostics. Builder Plan: 30 EUR/month to keep it running: watchlists, webhooks, live preflight stream, dispute-history CSV export, receipts, higher quota, account-managed keys and recurring monitoring.
Run the 3-minute integration test / Request placement review / Create account / Login to existing account
Pricing / Why paid access exists / Access and rate limits
For agents that pay per request, the canonical CDP/x402 route is 0.01 USDC per dispute diagnostic and is indexed in CDP Bazaar. The tx-hash bridge remains as a compatibility fallback.