# rivomarkets API

> A REST API and live stream for prediction markets on Kalshi, Polymarket, Polymarket US and Gemini.

Source: https://rivo.markets/docs

The Rivo API gives you programmatic access to prediction markets on Kalshi, Polymarket, Polymarket US and Gemini. Use it to search markets and read their prices, order books and price history, track top whale trades, follow market moves as they happen, and look up traders and their records. You can also backtest strategies, place paper trades and run paper bots.

Your first call:

```bash
curl "https://api.rivo.markets/v2/trades?limit=5" \
  -H "Authorization: Bearer $RIVO_API_KEY"
```

## Start here

- [Quickstart](https://rivo.markets/docs/quickstart): Create a key and make your first three calls in five minutes.
- [Core concepts](https://rivo.markets/docs/concepts): Learn how refs, cursors, filters, units and the response envelope work.
- [Build with AI](https://rivo.markets/docs/build-with-ai): Give your coding agent llms.txt, Markdown pages and instructions to follow.
- [Migrate from v1](https://rivo.markets/docs/migrate-from-v1): See where each v1 route went and when v1 stops answering.

## What you can build

- [Trades](https://rivo.markets/docs/reference/list-trades): List large trades from the last 30 days and filter them by venue, kind of market, size, price and the trader's record.
- [Stream](https://rivo.markets/docs/reference/stream): Receive trades and market moves the moment they land, filtered on one connection.
- [Markets](https://rivo.markets/docs/reference/list-markets): Search markets on every venue, then read one with its book, whales, history and call.
- [Traders](https://rivo.markets/docs/reference/list-traders): Rank traders by profit, win rate or return, overall or in one kind of market.
- [Backtest](https://rivo.markets/docs/reference/backtest): Score a signal or a trader against settled history, with a holdout, a sweep or a breakdown.
- [Paper and bots](https://rivo.markets/docs/reference/create-bot): Place paper trades against live order books and run trader, signal and market bots on paper.

## The basics

|  |  |
| --- | --- |
| Base URL | `https://api.rivo.markets/v2` |
| Auth | Send `Authorization: Bearer rivo_live_...` with a key from [Settings](https://rivo.markets/settings?tab=developer). |
| Format | Requests and responses use JSON over HTTPS. The stream uses Server-Sent Events. |
| Success | A success returns `{ "data": ... }`, and a list adds `nextCursor`. |
| Failure | A failure returns `{ "success": false, "error": "...", "code": "..." }` with a matching HTTP status. |
| Limits | Each key can make 120 requests a minute, read 50,000 trades a day and hold 3 streams open. Trades reach back 30 days. |

Every Rivo subscription includes the API. A key works as long as the account that created it stays subscribed. Rivo is not an exchange. Paper orders and bots trade against live venue order books, but they never move money.
