Polymarket API: International and US Mapped Data With Cross-Venue IDs
Polymarket API via matchwire: query Polymarket International and Polymarket US markets with same-event IDs matched to Kalshi. Docs, code sample, and MCP included.
Polymarket International
The international order book, returned with matchwire mapped event IDs attached. Each listing carries venue, marketId, type, side, tier, confidence and the ready-made request: the Polymarket slug or numeric market ID stays native and request is the exact Gamma API GET that market answers. Mapping only, no prices. History depth is not published yet.
Polymarket US
The US platform is a separate venue with its own market titles and tickers, so it gets its own venue ID and its own alias list, and the same mapped event ID joins it to the event everywhere else. Each listing carries venue, marketId, type, side, tier, confidence and the ready-made request, with request pointing at https://gateway.polymarket.us for the US book.
Same event on Kalshi
Each mapped Polymarket International or Polymarket US market carries the shared ID joining it to the same event on Kalshi. See Kalshi API for the sibling view.
asc-cfb-sc-ala-2026-09-26-neg-20pt5, joined on the same row as the Kalshi and Polymarket International markets for that game.Endpoints you will use
Every call is one endpoint with comma lists as filters: GET /api/v1/rows, GET /api/v1/rows?since=SEQ, GET /api/v1/sports, GET /api/v1/status, GET /api/v1/push and GET /health. Narrow with venue=poly,polyintl, type=winner,total,handicap, sport=nfl,baseball, league=MLB, status=scheduled|live|ended and since=SEQ.
Code sample
curl -H "x-api-key: YOUR_KEY" \
"https://api.matchwire.win/api/v1/rows?venue=poly,polyintl&type=winner"
DIY venue wiring vs matchwire
DIY against the raw Polymarket International API means your own client, your own schema, and a manual Kalshi join. matchwire means one client and a shared mapped ID. Full compare: Prediction Market API.
FAQ
- Does this replace direct access to either Polymarket book?
- It is a mapping layer over Polymarket International and Polymarket US data, not a broker. Rate limit: 60 requests a minute per key, and the
/api/v1/pushstream is not limited, so poll?since=SEQfor deltas rather than the full set. - What is the mapped ID vs the venue market ID?
- The venue ID stays native (slug or numeric ID, whichever the book serves); the mapped ID joins venues. Its format is
ev:<sport>:<team-a>:<team-b>:<YYYY-MM-DD>. - Resolution and freshness?
- Rows carry a
seq; ask for?since=SEQand changed games come back whole, with deletions as tombstones. A freshness figure is not published yet. - Auth?
- Send your key as the
x-api-keyheader on every call. Your key's plan decides which venues and sports it may read. Asking for anything outside it returns a 403 that names what is not allowed. - How does the Kalshi side look?
- Same event ID on Kalshi API, with parent coverage on Prediction Market API.