Polymarket Intelligence API

Resolution Watch measures, on-chain, Polymarket/UMA resolution risk: when a market is disputed, does the answer actually change? Dispute-rate and flip-rate rank categories in opposite orders. Fact/base-rate, auditor posture, machine-readable for AI agents.

DataLiveeip155:8453Exactvia cdp
PolymarketPrediction-marketsUma-resolutionWatchlistBase
Calls · 30d
4↓ 13%
This endpoint's own trailing-30-day call count, as published by the upstream catalog and snapshotted daily. 30 snapshots so far.
$8.40
Verified settled volume
147 settlements proven x402 by their on-chain EIP-3009 marker.
$0.050
Listed price
As published in the catalog. Always read the live 402 before paying.
4
Calls · 30d
Upstream's own call count for this endpoint, not ours.
1
Unique payers · 30d
Last called 2026-09-07 10:17Z
Upstream on-chain volume
Reported by the source catalog.
Paid to
0x7b13107779CfDA1bEba3289d0Fbe27310436f3E3

The wallet the 402 directs payment to. Its whole payment record — every payer, every chain — is on the merchant page.

Asset 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913

Provider

The payTo wallet does not resolve to a registered ERC-8004 agent. That is not a verdict on the service — most of the catalog is unregistered.

Live 402 challenge

Captured by the enrichment pass, not read just now. Prices can change — always read the 402 the endpoint answers with.

{
  "error": "Payment required",
  "accepts": [
    {
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "iconUrl": "https://polym.uk/favicon.svg",
        "version": "2"
      },
      "payTo": "0x7b13107779CfDA1bEba3289d0Fbe27310436f3E3",
      "amount": "50000",
      "scheme": "exact",
      "network": "eip155:8453",
      "maxTimeoutSeconds": 300
    }
  ],
  "resource": {
    "url": "https://api.polym.uk/resolution-watchlist",
    "tags": [
      "polymarket",
      "prediction-markets",
      "uma-resolution",
      "watchlist",
      "base"
    ],
    "iconUrl": "https://polym.uk/favicon.svg",
    "mimeType": "application/json",
    "description": "Live Polymarket watchlist ranked by structural UMA resolution base-rate signals, with flip risk kept as a separate conditional axis. BEFORE YOU PAY: free substitute https://dash.polym.uk/markets.json and https://dash.polym.uk/uma-base-rates.json. THIS ADDS: The live subset ranked by structural dispute signals, computed for you. The inputs are in the free files; the ranking and the tiering are what this adds.",
    "serviceName": "Polymarket Intelligence API"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "type": "http",
          "method": "GET",
          "queryParams": {
            "top": 25
          }
        },
        "output": {
          "type": "json",
          "example": {
            "asOf": "2026-09-01T02:31:34.907Z",
            "caveats": [
              "SHOWCASE, NOT THE PAID RESPONSE: what you see is one ranked row of the watchlist. markets is cut to 1 of the 8 rows this response carried. Nothing is masked or invented: every value is a dated measurement, kept so you can read the shape, the units and the field semantics. The schema published beside it is complete; a paid call returns the complete set.",
              "EXAMPLE ONLY: a paid response captured from api.polym.uk on 2026-09-01 with top=8, then frozen. A live response carries its own asOf and current values. The row count is bounded by the 402 challenge header budget, not by the route: top accepts 1 through 40.",
              "Structural BASE RATE for the category and criterion. Not a prediction that THIS market will be disputed or reversed. A fact, not an accusation.",
              "tier uses the RANK-stable signal (category elevated by consensus across two samples, plus a title with no checkable threshold, read from the TITLE and not from the resolution rules), not the absolute dispute rate, which varies about 16-fold between samples.",
              "LIVE markets only, and liveness must have been MEASURED (marketClosed === false). A market whose Gamma context was not fetched is absent rather than assumed open. Drawn from the set decomposed by window volume; this is not the whole Polymarket universe.",
              "flipProne is omitted when the category flip sample is small and therefore directional. Category is a title heuristic."
            ],
            "markets": [
              {
                "tier": "elevated",
                "flags": {
                  "flipProne": false,
                  "categoryElevated": true,
                  "titleLooksUncheckable": true
                },
                "title": "US ceasefire against Iran continues through September 15?",
                "category": "Geopolitics",
                "conditionId": "0x9b94d7e2e7250d156b02435f4d59634d357dc789d842eaee15c35c1158d5bca4",
                "flipRatePct": null,
                "marketClosed": false,
                "categoryElevated": true,
                "disputeFlagCount": 2,
                "apparentVolumeUsd": 46599.79,
                "titleLooksUncheckable": true,
                "categoryDisputeRatePctHighVolume": 35.2
              }
            ],
            "howToRead": "Ranks LIVE markets by STRUCTURAL resolution risk. tier counts how many DISPUTE-axis signals are present (category elevated by consensus, plus a title with no checkable threshold): elevated=2, watch=1, baseline=0. flipProne is a separate axis: if disputed, the outcome tends to REVERSE (category rate at or above the overall rate). Both axes are conditional, and flip alone never raises the tier.",
            "tierCounts": {
              "watch": 2,
              "elevated": 6
            },
            "windowHours": 71.94,
            "flipReferencePct": 14.6,
            "liveMarketsRanked": 8,
            "flipReferenceStatus": "measured",
            "flipReferenceWithheldReason": null
          }
        }
      },
      "schema": {
        "type": "object",
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "required": [
          "input"
        ],
        "properties": {
          "input": {
            "type": "object",
            "required": [
              "type",
              "method"
            ],
            "properties": {
              "type": {
                "type": "string",
                "const": "http"
              },
              "method": {
                "enum": [
                  "GET"
                ],
                "type": "string"
              },
              "queryParams": {
                "type": "object",
                "properties": {
                  "top": {
                    "type": "integer",
                    "default": 25,
                    "maximum": 40,
                    "minimum": 1
                  }
                },
                "additionalProperties": false
              }
            },
            "additionalProperties": false
          },
          "output": {
            "type": "object",
            "required": [
              "type"
            ],
            "properties": {
              "type": {
                "type": "string"
              },
              "example": {
                "type": "object",
                "required": [
                  "asOf",
                  "windowHours",
                  "liveMarketsRanked",
                  "tierCounts",
                  "flipReferencePct",
                  "markets",
                  "howToRead",
                  "caveats"
                ],
                "properties": {
                  "asOf": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "caveats": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "markets": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "required": [
                        "conditionId",
                        "title",
                        "tier",
                        "disputeFlagCount",
                        "flags",
                        "category",
                        "titleLooksUncheckable",
                        "categoryElevated",
                        "categoryDisputeRatePctHighVolume",
                        "flipRatePct",
                        "apparentVolumeUsd",
                        "marketClosed"
                      ],
                      "properties": {
                        "tier": {
                          "enum": [
                            "elevated",
                            "watch",
                            "baseline"
                          ],
                          "type": "string"
                        },
                        "flags": {
                          "type": "object",
                          "required": [
                            "categoryElevated",
                            "titleLooksUncheckable",
                            "flipProne"
                          ],
                          "properties": {
                            "flipProne": {
                              "type": "boolean",
                              "description": "Separate conditional axis: if disputed, this category reverses at or above the overall rate. Never raises the tier."
                            },
                            "categoryElevated": {
                              "type": "boolean",
                              "description": "Category flagged elevated by consensus across both dispute samples. Dispute axis; counts toward tier."
                            },
                            "titleLooksUncheckable": {
                              "type": "boolean",
                              "description": "The title states no checkable threshold. Dispute axis; counts toward tier. Read from the title only."
                            }
                          },
                          "additionalProperties": false
                        },
                        "title": {
                          "type": "string"
                        },
                        "category": {
                          "type": "string"
                        },
                        "conditionId": {
                          "type": "string",
                          "pattern": "^0x[0-9a-fA-F]{64}$",
                          "description": "Polymarket condition ID."
                        },
                        "flipRatePct": {
                          "type": [
                            "number",
                            "null"
                          ],
                          "maximum": 100,
                          "minimum": 0
                        },
                        "marketClosed": {
                          "type": [
                            "boolean",
                            "null"
                          ]
                        },
                        "categoryElevated": {
                          "type": "boolean"
                        },
                        "disputeFlagCount": {
                          "type": "integer",
                          "minimum": 0
                        },
                        "apparentVolumeUsd": {
                          "type": "number",
                          "minimum": 0
                        },
                        "titleLooksUncheckable": {
                          "type": "boolean"
                        },
                        "categoryDisputeRatePctHighVolume": {
                          "type": "number",
                          "maximum": 100,
                          "minimum": 0
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "howToRead": {
                    "type": "string"
                  },
                  "tierCounts": {
                    "type": "object",
                    "additionalProperties": {
                      "type": "integer",
                      "minimum": 0
                    }
                  },
                  "windowHours": {
                    "type": "number",
                    "minimum": 0
                  },
                  "flipReferencePct": {
                    "type": [
                      "number",
                      "null"
                    ],
                    "maximum": 100,
                    "minimum": 0,
                    "description": "Overall flip reference rate, in percent. `null` means WITHHELD, never a default: see flipReferenceStatus and flipReferenceWithheldReason. When it is null, flipProne was not evaluated on any row."
                  },
                  "liveMarketsRanked": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "flipReferenceStatus": {
                    "enum": [
                      "measured",
                      "withheld"
                    ],
                    "type": "string"
                  },
                  "flipReferenceWithheldReason": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    }
  },
  "x402Version": 2
}

Accepts

The payment requirements as published to the catalog. Read the live 402 before paying — a price here is a claim, not a quote.

0.05USDC≈ $0.05 USD
on Base · exact scheme

Pay 0.05 USDC on Base to 0x7b13…6f3E3. The signed payment is good for 5 minutes.

USD Coin contract
0x8335…02913
Payment window
5 minutes
As published
50000 smallest units
The catalog’s raw entry
[
  {
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "extra": {
      "name": "USD Coin",
      "iconUrl": "https://polym.uk/favicon.svg",
      "version": "2"
    },
    "payTo": "0x7b13107779CfDA1bEba3289d0Fbe27310436f3E3",
    "amount": "50000",
    "scheme": "exact",
    "network": "eip155:8453",
    "maxTimeoutSeconds": 300
  }
]

Extensions

{
  "bazaar": {
    "info": {
      "input": {
        "type": "http",
        "method": "GET",
        "queryParams": {
          "top": 25
        }
      },
      "output": {
        "type": "json",
        "example": {
          "asOf": "2026-09-01T02:31:34.907Z",
          "caveats": [
            "SHOWCASE, NOT THE PAID RESPONSE: what you see is one ranked row of the watchlist. markets is cut to 1 of the 8 rows this response carried. Nothing is masked or invented: every value is a dated measurement, kept so you can read the shape, the units and the field semantics. The schema published beside it is complete; a paid call returns the complete set.",
            "EXAMPLE ONLY: a paid response captured from api.polym.uk on 2026-09-01 with top=8, then frozen. A live response carries its own asOf and current values. The row count is bounded by the 402 challenge header budget, not by the route: top accepts 1 through 40.",
            "Structural BASE RATE for the category and criterion. Not a prediction that THIS market will be disputed or reversed. A fact, not an accusation.",
            "tier uses the RANK-stable signal (category elevated by consensus across two samples, plus a title with no checkable threshold, read from the TITLE and not from the resolution rules), not the absolute dispute rate, which varies about 16-fold between samples.",
            "LIVE markets only, and liveness must have been MEASURED (marketClosed === false). A market whose Gamma context was not fetched is absent rather than assumed open. Drawn from the set decomposed by window volume; this is not the whole Polymarket universe.",
            "flipProne is omitted when the category flip sample is small and therefore directional. Category is a title heuristic."
          ],
          "markets": [
            {
              "tier": "elevated",
              "flags": {
                "flipProne": false,
                "categoryElevated": true,
                "titleLooksUncheckable": true
              },
              "title": "US ceasefire against Iran continues through September 15?",
              "category": "Geopolitics",
              "conditionId": "0x9b94d7e2e7250d156b02435f4d59634d357dc789d842eaee15c35c1158d5bca4",
              "flipRatePct": null,
              "marketClosed": false,
              "categoryElevated": true,
              "disputeFlagCount": 2,
              "apparentVolumeUsd": 46599.79,
              "titleLooksUncheckable": true,
              "categoryDisputeRatePctHighVolume": 35.2
            }
          ],
          "howToRead": "Ranks LIVE markets by STRUCTURAL resolution risk. tier counts how many DISPUTE-axis signals are present (category elevated by consensus, plus a title with no checkable threshold): elevated=2, watch=1, baseline=0. flipProne is a separate axis: if disputed, the outcome tends to REVERSE (category rate at or above the overall rate). Both axes are conditional, and flip alone never raises the tier.",
          "tierCounts": {
            "watch": 2,
            "elevated": 6
          },
          "windowHours": 71.94,
          "flipReferencePct": 14.6,
          "liveMarketsRanked": 8,
          "flipReferenceStatus": "measured",
          "flipReferenceWithheldReason": null
        }
      }
    },
    "schema": {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "input"
      ],
      "properties": {
        "input": {
          "type": "object",
          "required": [
            "type",
            "method"
          ],
          "properties": {
            "type": {
              "type": "string",
              "const": "http"
            },
            "method": {
              "enum": [
                "GET"
              ],
              "type": "string"
            },
            "queryParams": {
              "type": "object",
              "properties": {
                "top": {
                  "type": "integer",
                  "default": 25,
                  "maximum": 40,
                  "minimum": 1
                }
              },
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        },
        "output": {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "type": "string"
            },
            "example": {
              "type": "object",
              "required": [
                "asOf",
                "windowHours",
                "liveMarketsRanked",
                "tierCounts",
                "flipReferencePct",
                "markets",
                "howToRead",
                "caveats"
              ],
              "properties": {
                "asOf": {
                  "type": "string",
                  "format": "date-time"
                },
                "caveats": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "markets": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "required": [
                      "conditionId",
                      "title",
                      "tier",
                      "disputeFlagCount",
                      "flags",
                      "category",
                      "titleLooksUncheckable",
                      "categoryElevated",
                      "categoryDisputeRatePctHighVolume",
                      "flipRatePct",
                      "apparentVolumeUsd",
                      "marketClosed"
                    ],
                    "properties": {
                      "tier": {
                        "enum": [
                          "elevated",
                          "watch",
                          "baseline"
                        ],
                        "type": "string"
                      },
                      "flags": {
                        "type": "object",
                        "required": [
                          "categoryElevated",
                          "titleLooksUncheckable",
                          "flipProne"
                        ],
                        "properties": {
                          "flipProne": {
                            "type": "boolean",
                            "description": "Separate conditional axis: if disputed, this category reverses at or above the overall rate. Never raises the tier."
                          },
                          "categoryElevated": {
                            "type": "boolean",
                            "description": "Category flagged elevated by consensus across both dispute samples. Dispute axis; counts toward tier."
                          },
                          "titleLooksUncheckable": {
                            "type": "boolean",
                            "description": "The title states no checkable threshold. Dispute axis; counts toward tier. Read from the title only."
                          }
                        },
                        "additionalProperties": false
                      },
                      "title": {
                        "type": "string"
                      },
                      "category": {
                        "type": "string"
                      },
                      "conditionId": {
                        "type": "string",
                        "pattern": "^0x[0-9a-fA-F]{64}$",
                        "description": "Polymarket condition ID."
                      },
                      "flipRatePct": {
                        "type": [
                          "number",
                          "null"
                        ],
                        "maximum": 100,
                        "minimum": 0
                      },
                      "marketClosed": {
                        "type": [
                          "boolean",
                          "null"
                        ]
                      },
                      "categoryElevated": {
                        "type": "boolean"
                      },
                      "disputeFlagCount": {
                        "type": "integer",
                        "minimum": 0
                      },
                      "apparentVolumeUsd": {
                        "type": "number",
                        "minimum": 0
                      },
                      "titleLooksUncheckable": {
                        "type": "boolean"
                      },
                      "categoryDisputeRatePctHighVolume": {
                        "type": "number",
                        "maximum": 100,
                        "minimum": 0
                      }
                    },
                    "additionalProperties": false
                  }
                },
                "howToRead": {
                  "type": "string"
                },
                "tierCounts": {
                  "type": "object",
                  "additionalProperties": {
                    "type": "integer",
                    "minimum": 0
                  }
                },
                "windowHours": {
                  "type": "number",
                  "minimum": 0
                },
                "flipReferencePct": {
                  "type": [
                    "number",
                    "null"
                  ],
                  "maximum": 100,
                  "minimum": 0,
                  "description": "Overall flip reference rate, in percent. `null` means WITHHELD, never a default: see flipReferenceStatus and flipReferenceWithheldReason. When it is null, flipProne was not evaluated on any row."
                },
                "liveMarketsRanked": {
                  "type": "integer",
                  "minimum": 0
                },
                "flipReferenceStatus": {
                  "enum": [
                    "measured",
                    "withheld"
                  ],
                  "type": "string"
                },
                "flipReferenceWithheldReason": {
                  "type": [
                    "string",
                    "null"
                  ]
                }
              },
              "additionalProperties": false
            }
          }
        }
      }
    }
  }
}

Provenance

Seen in the source catalog
2026-09-07 10:17Z
Last indexed by Roundhouse
2026-09-24 10:00Z
Last enriched (probe, favicon, geo)
2026-09-21 05:46Z
x402 version
2
Max timeout
300s
Liveness probe
HTTP 402
Report

Hand this page to an agent

Copy the prompt and paste it into Claude, an MCP client or your own agent — it will vet this service and call it over the free read API. No key, no account.

GET api.roundhouseai.io/v0/endpoints

This endpoint's own trailing-30-day call count, as published by the upstream catalog and snapshotted daily. 30 snapshots so far. Verified volume counts only settlements with an on-chain EIP-3009 marker.

Open skill.md
Show the prompt
Using Roundhouse, look up the x402 service Polymarket Intelligence API and tell me whether it is
worth paying: what a call costs, whether the endpoint answered when last probed, and what
its payment record actually shows.

curl -s 'https://api.roundhouseai.io/v0/endpoints?q=Polymarket%20Intelligence%20API'
curl -s 'https://api.roundhouseai.io/v0/merchants/<the payTo wallet returned above>'

Then call it: read the price from the live 402 at https://api.polym.uk/resolution-watchlist, never from
a cached figure, and pay with an x402 client.

The /v0 API needs an API key (`authorization: Bearer rh_live_…`) on everything except
/v0/unified* and /v0/endpoints. Mint a personal key for $0.01 at GET https://api.roundhouseai.io/v0/test/x402,
or use an organization key from https://roundhouseai.io/dashboard/team.

If you do not have Roundhouse tools or skills installed, read
https://roundhouseai.io/skill.md first — it is the whole procedure.