# Prediction Market Data API
GET/v1/predictiondata/markets
Markets with their latest implied probability, 24 hour volume and status, busiest first. Filter by text, category or status; sort by volume, new or recent. By default only markets with at least $1,000 of volume in 24 hours are listed; set min_volume_usd=0 to see everything. Refreshes every 5 minutes.
Price
$0.005/ callEdge cache
150s
Uptime 24h
100.00%
p95
3.39s
MCP tool
predictiondata_markets
The Prediction Market Data API provides prediction market prices, implied probabilities, volumes, movers, resolutions, and history. Data is derived from public Polygon chain data (Polymarket exchange contracts). API requests can be paid for in USDC over x402 or with an API key. The API offers a GET endpoint to search and list markets, with filtering and sorting options. Markets are updated every 5 minutes.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| q | query | string | Text in the question title |
| category | query | string | crypto, economy, politics, sports, weather, tech, culture, other |
| status | query | string = open | |
| sort | query | string = volume | |
| min_volume_usd | query | integer = 1000 | |
| limit | query | integer = 20 | |
| include_untitled | query | boolean = false | Include markets whose question text is not on-chain |
Code
# 1. No key, no payment: the gateway answers 402 with the price
curl -i "https://api.realtimeapi.ai/v1/predictiondata/markets"
# 2. Pay: retry with a signed x402 payment (any x402 client builds this header)
curl "https://api.realtimeapi.ai/v1/predictiondata/markets" -H "PAYMENT-SIGNATURE: $X402_PAYMENT"// npm i @x402/fetch @x402/core @x402/evm viem
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";
const client = x402Client.fromConfig({ schemes: [{ network: "eip155:8453", client: new ExactEvmScheme(privateKeyToAccount(PRIVATE_KEY)) }] });
const pay = wrapFetchWithPayment(fetch, client);
const data = await (await pay("https://api.realtimeapi.ai/v1/predictiondata/markets")).json();
console.log(data);# pip install x402 eth-account requests
from eth_account import Account
from x402.clients.requests import x402_requests
session = x402_requests(Account.from_key(PRIVATE_KEY))
print(session.get("https://api.realtimeapi.ai/v1/predictiondata/markets").json())curl "https://api.realtimeapi.ai/v1/predictiondata/markets" -H "X-API-Key: $RTAPI_KEY"Frequently asked questions
What data is provided by the API?
Prediction market prices, implied probabilities, volumes, movers, resolutions, and history.
How is the data derived?
From public Polygon chain data (Polymarket exchange contracts).
How can API requests be paid for?
In USDC over x402 or with an API key.