- +.+.+ ++--·.-- .·-·--·-.--· -·-·.
·.-·+-..+- ·· -++-.+- -+-.·-...--.+.--.
·.+.+· +-.- + .-·+.. +-+·.. +---.+-.+
·-++.+.-+.+. . --- ·+-·-. +- ·- -·. ·.·.
·+·+.--.·-++ +-···+·.·+·. ··+ -+ -+- -
-+ .- ·+.+- -·+. ++.· +·-·-·-·-+.·- +.+
· -+-+ ·+ ·+.--+.-·+ +.·-·-+···-· ...·
.+ · · -. -· +·-+..·+··-++- ·+-. + +·
.-··· .· -..+.-- -. +·. .·+ ++.·- ·+-
+·.- + . ++ .-··.+.·.· ·+-+·· .-·.·+-.
- -· .· -..- ·+++·-..· .·+- ·+-+-.-+ ..
·.++.- · ---·· - .--+ +..+- .·.·+··+- .
·.+-.·+·.+· +-. ···-.- +· . ··-+ .·.-+
-· -- .·-+. + + ·.+·+·-·..- · +.-·.+ ++
· -+++·. -.· -. +-..+··- -·. ..-····..·
PREDICTOR_SDK

// OpenAPI-first Platform

Unified market data infrastructure for prediction markets.

Normalized schemas, cross-platform matching, and generated SDKs for canonical event matching across major prediction market providers.

01 // canonical_matching

Every market is assigned a stable, versioned ID. Match events across Kalshi, Polymarket, and more without manual reconciliation.

02 // cross_platform_schema

One unified JSON schema. Stop writing custom parsers for every new provider. Use our generated TypeScript and Go SDKs.

03 // real_time_sync

Low-latency polling and update pipeline ensures your data is always fresh, with built-in retry logic and source-aware grouping.

sys_monitor // status: active

capture_v1.0.4

Live Snapshot

Pistons vs. Nets

evt_v1_5f2b4f1d6c0ea9818a9f8f9d

SOURCES

04

SUB_MARKETS

14

MARKET_ROWS

36

CROSS_SOURCE

14

SUB_MARKET_LANES

full|moneyline4 sources SOURCES
half:1|moneyline3 sources SOURCES
full|spread3 line families SOURCES
full|total3 line families SOURCES
half:1|total6 line families SOURCES

SOURCE_COVERAGE

KALSHI9 / 14
POLYMARKET9 / 14
PREDICT1 / 14
SX.BET14 / 14

SUPPORTED_PROVIDERS

KalshiPolymarketPredictSX.Bet

// Endpoint Surface

Purpose-built API routes

Small endpoint surface, high-value data model. Designed for stability.

GET

/api/v1/health

Simple service health check for uptime and readiness probes.

GET

/api/v1/matching-markets

Query canonical events, market rows, and grouped sub-markets.

categorysportleaguemarket_typesegmentsourcestarts_afterstarts_beforemin_sourcescursorlimit

// Processing Pipeline

From raw catalogs to canonical market events

Every step is designed to preserve source detail while giving you stable cross-platform IDs.

STEP_001

Ingest

Fetch active market catalogs from connected platforms and normalize source-specific fields.

STEP_002

Match

Group equivalent markets into game-level events and cross-source sub-markets.

STEP_003

Serve

Query one API endpoint or generated SDK method to consume unified market data.

// Implementation

Build in minutes

Use the generated TypeScript client or call the API directly from your stack.

file // TypeScript SDK ClientTypeScript
const client = new PredictorSDKClient({
  baseUrl: "https://api.predictorsdk.com",
});

const markets = await client.getMatchingMarkets({
  category: "sports",
  sport: "basketball",
  league: "nba",
  market_type: "moneyline,spread,total",
  segment: "full,half:1",
  source: "kalshi,polymarket,sxbet",
  limit: 25,
});

console.log(markets.data?.[0]?.sub_markets);
file // REST API Querybash
curl -s "https://api.predictorsdk.com/api/v1/matching-markets?category=sports&sport=basketball&league=nba&market_type=moneyline,total&segment=full&limit=5"
file // Canonical Response ModelJSON
{
  "schema_version": "v1",
  "query": {
    "category": "sports",
    "sport": "basketball",
    "league": "nba"
  },
  "data": [
    {
      "event_id": "evt_v1_5f2b4f1d6c0ea9818a9f8f9d",
      "sources": ["kalshi", "polymarket", "predict", "sxbet"],
      "sub_market_count": 14,
      "sub_markets": [
        {
          "key": "moneyline|full|winner",
          "market_type": "moneyline",
          "segment": "full",
          "source_count": 4
        }
      ]
    }
  ]
}

// Market Matrix

Coverage and mapping

See how each line type and segment maps across connected platforms.

Market SliceExamplesPlatforms
Moneyline (full)WinnerKalshi, Polymarket, Predict, SX.Bet
Moneyline (1H)WinnerKalshi, Polymarket, SX.Bet
Spread (full)-14.5, -15.5, -17.5Kalshi, Polymarket, SX.Bet
Total (full)216.5, 217.5, 218.5Kalshi, Polymarket, SX.Bet
Total (1H)107.5, 110.5, 111.5+Kalshi, Polymarket, SX.Bet

// Ready to Integrate

Clean integration. Stable infrastructure.

PredictorSDK stays spec-driven so your integration remains clean as the API evolves. Start with the matching markets endpoint today.