Matched Market Daily Comparison

GET/gateway/v1/prediction-market/matching/daily

Returns daily volume and open interest comparison for a specific Polymarket <> Kalshi matched pair.

Both `polymarket_condition_id` and `kalshi_market_ticker` are required. Use `matching-market-pairs` to discover matched pairs first.

Volume units: Polymarket = USD, Kalshi = contracts.

Query Parameters

polymarket_condition_idstringrequired

Polymarket condition ID

Example: 0x6fefc0438c7598b23531457c8c60541990d0786bd4bd9dfc3eabc8d95c291092
kalshi_market_tickerstringrequired

Kalshi market ticker

Example: KXBTC2026250-27JAN01-250000
time_rangeenum<string>

Window of daily data to return: `1d`, `7d`, `30d`, `90d`, `180d`, `1y`, or `all`. Bucket size is fixed at 1 day — this endpoint uses `time_range` only and does NOT accept `interval`.

Available options:1d7d30d90d180d1yall
Example: 30d
limitinteger

Maximum rows

Example: 200
offsetinteger

Pagination offset

Example: 0
Matched Market Daily Comparison
const options = {method: 'GET'};

fetch('https://api.asksurf.ai/gateway/v1/prediction-market/matching/daily?polymarket_condition_id=0x6fefc0438c7598b23531457c8c60541990d0786bd4bd9dfc3eabc8d95c291092&kalshi_market_ticker=KXBTC2026250-27JAN01-250000&time_range=30d&limit=200&offset=0', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
OK
{
  "$schema": "https://example.com/schemas/DataResponseMatchedMarketDailyItem.json",
  "data": [
    {
      "kalshi_oi_contracts": 123,
      "kalshi_volume_contracts": 123,
      "polymarket_oi_usd": 123,
      "polymarket_volume_usd": 123,
      "timestamp": 123
    }
  ],
  "meta": {
    "cached": true,
    "credits_used": 123,
    "empty_reason": "<string>",
    "has_more": true,
    "limit": 123,
    "offset": 123,
    "total": 123,
    "watermark": 123
  }
}