{"uid":"cap_0dN01zJujwMx6P1Cz36Fa","slug":"mavrin-prediction-market-batch-odds-api-add77b86","name":"Mavrin Prediction Market Batch Odds API","description":"Kalshi and Polymarket US research data for agents. Free market search and coverage, odds from 0.004 USDC, and x402 payments on Base.","url":"https://api.mavrin.app/api/v1/odds/batch","method":"GET","headers":{},"bodySchema":{"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","required":["pair_ids"],"properties":{"pair_ids":{"type":"string","description":"Comma-separated list of 1 to 10 unique tracked pair IDs; find IDs using the free /api/v1/markets/search endpoint"}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object"}}}}},"responseSchema":{"type":"json","example":{"asOf":1788826381,"count":1,"pairs":[{"gap":0.1,"kalshi":{"no_ask":0.6,"yes_ask":0.4},"pair_id":"mlb-champ-2026-yankees","hedge_cost":0.9,"polymarket_us":{"no_ask":0.5,"yes_ask":0.5}}],"stale":false,"stalenessSeconds":8}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.012","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.012/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.012","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.012","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_BSdqzPj1J6OANrAZ56vrC","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.012","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Fetches real-time yes/no odds for up to 10 prediction market pairs from both Kalshi and Polymarket US in a single request","exampleAgentPrompt":"Pull the current Kalshi and Polymarket odds for these pair IDs: mlb-champ-2026-yankees and nba-finals-2026-celtics — and tell me the gap between them so I can see if there's an arbitrage opportunity.","exampleUseCases":[{"title":"Sports market arbitrage scanner","prompt":"Get the latest yes and no odds from both Kalshi and Polymarket for these three MLB futures pair IDs: mlb-champ-2026-yankees, mlb-champ-2026-dodgers, mlb-champ-2026-mets — and show me the gap and hedge cost for each."},{"title":"Election odds cross-exchange comparison","prompt":"Check the current Polymarket US and Kalshi prices for these political market pairs: us-senate-2026-georgia and us-senate-2026-arizona — I want to see if the yes prices differ by more than 5 cents."},{"title":"Portfolio odds snapshot for prediction markets","prompt":"Fetch the latest odds for all 8 of my tracked prediction market pairs — the IDs are crypto-etf-2026, fed-rate-cut-q3, nba-finals-2026-celtics, nfl-sb-2027-chiefs, mlb-champ-2026-yankees, us-senate-2026-ohio, oil-100-2026, and gold-3000-2026 — and tell me which ones have the freshest data and which are stale."}],"resultDescription":"Returns a JSON object with a timestamp (asOf), count of pairs returned, a staleness flag and staleness age in seconds, and an array of pairs each containing the pair_id, Kalshi yes_ask and no_ask prices, Polymarket US yes_ask and no_ask prices, the price gap between exchanges, and the hedge cost in USDC.","failureModes":["Invalid or unknown pair_ids return empty results or errors — IDs must be found via the free /api/v1/markets/search endpoint first","More than 10 pair_ids in a single request may be rejected","Payment failure via x402 on Base blocks the request if wallet balance is insufficient","Stale data flag may indicate odds are not fully current if the source exchanges are delayed","Malformed comma-separated pair_ids string causes a 400-level validation error"],"whenToPreferThis":"Use this endpoint when you need odds from both Kalshi and Polymarket US simultaneously for multiple markets in one call, especially when comparing prices across exchanges or scanning for arbitrage gaps. Prefer this over single-market lookups when you have 2–10 markets to check at once, and over building your own scraper when you want normalized, cross-exchange data with hedge cost already calculated.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T18:43:37.693Z","isFirstParty":false}