# Routeur > Proven relations between Kalshi and Polymarket markets, with the history and signals built on them. - [Routeur API](https://docs.routeur.app/index.md): Proven relations between Kalshi and Polymarket markets, and the history and signals built on them. - [Quickstart](https://docs.routeur.app/quickstart.md): From a key to your first relation in three requests. - [Authentication](https://docs.routeur.app/authentication.md): Send your key with every request. - [Rate limits](https://docs.routeur.app/rate-limits.md): Per-minute limits and daily quotas by tier. - [Errors and conventions](https://docs.routeur.app/errors.md): How responses, prices, times, pagination and errors are shaped. - [Events and markets](https://docs.routeur.app/concepts/events-and-markets.md): How venues' listings map onto events, outcomes and markets. - [Relations](https://docs.routeur.app/concepts/relations.md): What it means for two markets to be proven related. - [Leads](https://docs.routeur.app/concepts/leads.md): Purchases that pay at least $1 in every outcome a relation allows. - [History and signals](https://docs.routeur.app/concepts/history.md): Recorded quotes and trades, and the signals read from them. - [Strategies](https://docs.routeur.app/concepts/strategies.md): Rules measured against settled history, and the markets that fit them now. - [Webhooks](https://docs.routeur.app/webhooks/overview.md): Signed alerts when a lead can be filled at a profit. - [Verifying signatures](https://docs.routeur.app/webhooks/verify-signatures.md): Check that a delivery came from Routeur and is recent. - [An executable mispricing lead](https://docs.routeur.app/webhooks/lead-executable.md): Sent when a graph run finds a lead whose live order books could be filled at a profit of at least the subscription's minimum. An unchanged lead is not re-sent for six hours unless its net profit doubles. Slack subscriptions receive a formatted `text` message instead of this body. - [A test delivery](https://docs.routeur.app/webhooks/ping.md): Sent when a test ping is requested for a subscription, through the same signed delivery path as real alerts. - [Latest graph run and crawls](https://docs.routeur.app/api-reference/service/latest-graph-run-and-crawls.md): The most recent finished graph run with its counts, and the latest crawl of each venue. - [This document](https://docs.routeur.app/api-reference/service/this-document.md): The OpenAPI 3.1 description of the API, as JSON. - [Categories](https://docs.routeur.app/api-reference/events/categories.md): The shared categories both venues' events are sorted into, with how many listed events each has. - [Browse events](https://docs.routeur.app/api-reference/events/browse-events.md): Events across both venues, one card per real-world event: when Kalshi and Polymarket list the same event, it appears once with both venues' prices. Each event carries its three leading outcomes. - [Search events](https://docs.routeur.app/api-reference/events/search-events.md): Finds events for free text and never comes back empty. Results come in order of how they were found, each labeled with `match`: - [Get an event](https://docs.routeur.app/api-reference/events/get-an-event.md): One event with every outcome priced on each venue that lists it. - [Names markets are labeled with](https://docs.routeur.app/api-reference/events/names-markets-are-labeled-with.md): The names most listed events are about, for browsing: people, teams, places and subjects, with how many events carry each. - [Markets about a person, team, place or subject](https://docs.routeur.app/api-reference/events/markets-about-a-person-team-place-or-subject.md): Every listed event labeled with this name, most traded first, and the names that most often appear beside it. - [What's moving and why](https://docs.routeur.app/api-reference/signals/whats-moving-and-why.md): The biggest 24-hour price moves among markets with at least $1,000 traded, each with the unusual-trading signals of the last day, its trades and net money toward Yes, and how many markets the graph relates to it. - [Large fills](https://docs.routeur.app/api-reference/signals/large-fills.md): The largest fills across venues, newest first, with the outcome each backs. Windows that reach back before the live trade feed include archived Polymarket fills, marked archived. - [One-sided money](https://docs.routeur.app/api-reference/signals/one-sided-money.md): Markets with at least $2,000 traded over the window, ranked by net money toward Yes or No. The week and month windows reach into archived history. - [Closing soon](https://docs.routeur.app/api-reference/signals/closing-soon.md): Events closing within the next days with at least $500 traded today, grouped by day and most traded first. - [How prices resolved](https://docs.routeur.app/api-reference/signals/how-prices-resolved.md): For settled markets, how often markets priced in each 10-cent band a number of days before close resolved Yes. A well-calibrated market resolves Yes about as often as its price; gaps show where prices ran rich or cheap. Kalshi prices are the midpoint of the best bid and ask, or the last trade; Polym… - [Strategies history supports](https://docs.routeur.app/api-reference/signals/strategies-history-supports.md): Rules to buy one side of markets priced in a 10-cent band some days before they close, drawn from settled history, with what $100 spread across every such market came back as and a 95% range on it. Only rules with at least 100 settled markets, a return of 3% or more before fees, and an edge in the s… - [A strategy and the markets that fit it now](https://docs.routeur.app/api-reference/signals/a-strategy-and-the-markets-that-fit-it-now.md): Listed markets on the strategy's venue and category, with a Yes ask inside its band, closing near its horizon, and not yet under way; most traded first. - [The live tape](https://docs.routeur.app/api-reference/signals/the-live-tape.md): A short mixed list for a scrolling tape, taking turns between tradeable moves, large fills in the last hour, gaps between venues on proven-equivalent markets, and open markets fitting the strongest strategy. - [Market insights](https://docs.routeur.app/api-reference/signals/market-insights.md): What stands out right now, refreshed every few minutes: proven-equivalent markets priced furthest apart across venues, the biggest 24-hour price moves among markets with at least $1,000 traded, and the most traded markets. - [Mispricing leads](https://docs.routeur.app/api-reference/signals/mispricing-leads.md): Two-leg purchases that pay at least $1 in every outcome a proven relation allows, priced from recorded top-of-book asks with estimated fees. The best leads each run are sized against live order books (`depth`); only leads with `depth.executable` could be filled at a profit when the books were read.… - [Unusual flow](https://docs.routeur.app/api-reference/signals/unusual-flow.md): Markets whose last 15 minutes of trading were unusual against their own previous week, scored every five minutes. Repeated detections of the same market and kind within an hour extend one signal. Signals describe trading, not its cause. - [An executable mispricing lead](https://docs.routeur.app/api-reference/signals/an-executable-mispricing-lead.md): Sent when a graph run finds a lead whose live order books could be filled at a profit of at least the subscription's minimum. An unchanged lead is not re-sent for six hours unless its net profit doubles. Slack subscriptions receive a formatted `text` message instead of this body. - [A test delivery](https://docs.routeur.app/api-reference/signals/a-test-delivery.md): Sent when a test ping is requested for a subscription, through the same signed delivery path as real alerts. - [Search markets](https://docs.routeur.app/api-reference/graph/search-markets.md): Markets in the latest graph, ordered by title. Text search matches titles by similarity, so small misspellings still match. - [Get a market](https://docs.routeur.app/api-reference/graph/get-a-market.md): One market with its rules, latest asks and relation counts. - [List a market's relations](https://docs.routeur.app/api-reference/graph/list-a-markets-relations.md): Every proven relation from this market's point of view: `implies` means this market resolving Yes guarantees the other resolves Yes. Cross-venue relations come first. - [Cross-venue pairs](https://docs.routeur.app/api-reference/graph/cross-venue-pairs.md): Relations between a Kalshi and a Polymarket market, stated from the left market's side: `subset` means the left market resolving Yes guarantees the right does. - [Quote history](https://docs.routeur.app/api-reference/history/quote-history.md): Top-of-book asks recorded each time they changed, oldest first. The first point is the last change before the requested range, so a chart can start at the range's left edge. At most 5,000 points. - [Trades](https://docs.routeur.app/api-reference/history/trades.md): Public fills recorded from the venue's trade feed, newest first. Recording runs every minute; Polymarket fills that the feed served without a market are not included. No account or wallet identity is recorded. ## OpenAPI Specs - [openapi](/openapi.yaml)