Prediction markets and DAOs logo

UMA Dispute EV Desk

$0.50 USDC per call · Smart contracts and tokens · POST /api/v1/dispute-ev · Id dispute-ev

For a Polymarket market inside its roughly two-hour UMA challenge window, reads the live proposal on Polygon (adapter, optimistic oracle, bond, finalFee, expiry), judges P(proposal wrong or too early) against the literal rules with an ensemble plus red-team pass and verified quotes (full-game sports markets are decided by code with no model when Gamma's timestamps show the answer came before the game ended, or when the final score settles an NBA, NHL, MLB or college-football moneyline, spread or total), and computes DISPUTE vs ABSTAIN expected value (bond win/loss, DVM lock cost, gas, your position and reset delay). Returns verdict.action DISPUTE / DO_NOT_DISPUTE / MONITOR_UNTIL with a UTC submit-by deadline, edge in USD and bps of the stake, and the full EV breakdown. Outside a live window it says why (settled, already disputed, no proposal yet) with the proposed and resolved outcome. For a market with no proposal yet, pass proposal.outcome to replay a what-if (mode what_if); the catalog example does this on a long-dated market. Not financial advice.

What you get

A wrong dispute costs the full bond plus finalFee for a gain of half the bond; the desk shows the breakeven win probability, the edge in dollars and whether your evidence clears it, before the window closes.

Call it

Send the JSON body below to https://agents.writerslogic.com/api/v1/dispute-ev. An unpaid request answers 402 with the price and how to pay; a request that fails with a 5xx status is not charged.

curl -i -X POST https://agents.writerslogic.com/api/v1/dispute-ev \
  -H 'content-type: application/json' \
  -d '{"market":"will-jd-vance-win-the-2028-us-presidential-election","proposal":{"outcome":"first"},"position":{"outcome":"No","shares":400,"avgPrice":0.83},"params":{"aprOpportunity":0.15,"minEdgeUsd":2}}'

Input

FieldTypeRequiredDescription
marketstring; length 3..500yesPolymarket slug, market/event URL, conditionId or questionID.
proposalobjectnoOverrides for on-chain proposal fields (what-if or replay). Omit to read the live proposal.
positionobjectnoYour holding in this market.
pricesobjectnoCurrent prices of the first and second listed outcomes, USD per share.
evidenceUrlsarray<string; length 0..2000>; max 3 itemsnoPublic pages to treat as evidence.
paramsobjectno

Example request body

{
  "market": "will-jd-vance-win-the-2028-us-presidential-election",
  "proposal": {
    "outcome": "first"
  },
  "position": {
    "outcome": "No",
    "shares": 400,
    "avgPrice": 0.83
  },
  "params": {
    "aprOpportunity": 0.15,
    "minEdgeUsd": 2
  }
}

Result

The response is { "data": ..., "_provenance": ... }. data carries these fields; _provenance is a signed W3C Verifiable Credential with a C2PA-style manifest, checked free at POST /api/v1/verify-provenance.

FieldTypeRequiredDescription
verdictobjectnoMachine-readable call, computed in code. Leads the answer; detail follows in the other fields.
disclaimerstringnoNot financial advice.
modestring; one of "live", "what_if"nowhat_if: no proposal existed yet and the caller's proposal override was judged instead of an on-chain proposal.
retrospectiveobjectnoPresent when the request is already settled, disputed, resolved or paused: status, proposed and resolved outcome labels, proposer and disputer.
decisionstring; one of "DISPUTE", "DO_NOT_DISPUTE", "MONITOR_UNTIL"no
deadlineUtcone ofnoSubmit-by time (window close minus safety margin) or re-check time, UTC ISO-8601.
confidencestring; one of "low", "medium", "high"no
abstentionobjectnoSet when no judgment was made (unsupported market, blocked state, insufficient evidence).
reasonsarray<string>no
marketobjectno
proposalobjectno
windowobjectno
probabilitiesobjectno
evobjectnoEV of DISPUTE and ABSTAIN with bond, lock, gas and position components, plus breakeven probability and sensitivity.
judgmentobjectnoEnsemble and red-team outputs with verified quotes.
evidenceobjectno
whatWouldChangeTheVerdictarray<string>no
assumptionsobjectno

Pay and connect

Available through: x402 (USDC on Base), MCP, RapidAPI.

Machine-readable