One API for every prediction market.

Unified access to Polymarket, Kalshi, and more — through a single SDK and API.

Supported Exchanges

Polymarket
Kalshi
MetaculusComing Soon
PredictItComing Soon
ManifoldComing Soon
BetfairComing Soon
Polymarket
Kalshi
MetaculusComing Soon
PredictItComing Soon
ManifoldComing Soon
BetfairComing Soon

Unified Markets

Search across Polymarket and Kalshi with a single query. Normalized data, consistent schemas, zero integration headaches.

Managed Trading

We handle exchange authentication, credential encryption, and order routing. You just call the API.

Real-time Data

Live prices, orderbooks, candlesticks, and cross-exchange analytics. All through one endpoint.

How it works

From sign-up to your first trade in four steps.

1

Register

Create your free account and get an API key in seconds.

2

Connect Exchanges

Add your Polymarket or Kalshi credentials, or use managed mode.

3

Query Markets

Search and filter across all exchanges with a single request.

4

Execute Trades

Place, cancel, and manage orders through one unified API.

Simple by design

A single curl command is all it takes.

# Fetch open prediction markets
curl https://api.papi.market/polymarket/markets \
  -H "X-API-Key: papi_sk_your_key"

Built for developers

One SDK to connect to every prediction market.

use papi_sdk::{PapiClient, Exchange};

#[tokio::main]
async fn main() {
    let client = PapiClient::builder()
        .api_key("papi_sk_your_key")
        .build();

    // List open markets on Polymarket
    let markets = client
        .markets(Exchange::Polymarket)
        .status("open")
        .limit(10)
        .fetch()
        .await
        .unwrap();

    // Place an order
    let order = client
        .create_order(Exchange::Polymarket)
        .market(&markets[0].id)
        .side("buy")
        .price(0.65)
        .size(100.0)
        .execute()
        .await
        .unwrap();

    println!("Order placed: {}", order.id);
}

Unified SDK

Trade on Polymarket, Kalshi, and more through a single, consistent interface. No more juggling different APIs, auth flows, and data formats for each exchange.

Ship in managed mode to get started fast, or switch to direct mode when you need full control over your credentials.

View SDK Docs →

Manage everything from the dashboard

Monitor your API usage, manage keys, and configure exchanges — all in one place.

Dashboard

API Calls

12,847

Active Keys

3

Exchanges

2

API Calls (last 12h)

Simple, transparent pricing

Get started free during beta. Pricing details coming soon.

Free Beta

Current
$0

Free during beta

  • Unlimited API calls
  • All supported exchanges
  • Rust SDK access
  • WebSocket streaming
Get Started

Pro

Coming Soon

For teams and power users

  • Everything in Free
  • Higher rate limits
  • Priority support
  • Custom integrations
Notify Me

Frequently asked questions

Which prediction markets does PAPI support?
PAPI currently supports Polymarket and Kalshi, with more exchanges coming soon. All exchanges are accessible through a single unified API.
Is PAPI free to use?
PAPI is free during the beta period. We’ll announce pricing plans before the beta ends, with a generous free tier always available.
What SDKs are available?
We currently offer a Rust SDK with Python and TypeScript SDKs in development. You can also use the REST API directly with any language via cURL or HTTP client.
How are my exchange credentials stored?
All exchange credentials are encrypted at rest using AES-256 and never logged. In managed mode, PAPI handles authentication on your behalf. In direct mode, you manage your own credentials.
Can I use PAPI for algorithmic trading?
Yes. PAPI provides low-latency REST and WebSocket APIs suitable for algorithmic trading strategies across multiple prediction markets.
What are the rate limits?
Rate limits vary by plan. During the beta, all users get generous rate limits. Check the API documentation for current limits.

Ready to start trading?

Create an account and get your API key in under a minute.