API Documentation

Real-time Polymarket smart money analytics. 1.5B+ fills indexed, 180K+ smart whales tracked.

Quick Start

Public

No key required. Anonymous, rate-limited to 200 req/min per IP (wallet overview and positions: 300 a day per IP without a key).

curl "https://orcalayer.com/api/v2/markets/search?q=Trump"
Premium

Bearer token required. 600 req/min per account (all your keys together). If using a custom User-Agent and seeing Cloudflare 1010 errors, use a browser-like UA (e.g. Mozilla/5.0) โ€” server-side fix is in place, this is a fallback.

curl -H "Authorization: Bearer YOUR_KEY" "https://orcalayer.com/api/public/v1/whale-alerts"

Python SDK

Official Python client โ€” handles auth, rate-limit retries and the heavy-wallet 202 contract for you.

pip install orcalayer

Source: github.com/orcalayer/orcalayer-python ยท Example: whale-watchlist-monitor โ€” position alerts for a wallet watchlist.

Authentication

Public

Base URL: https://orcalayer.com/api/v2

Market data, search, wallet lookups, leaderboard, ISW status. No key, 200 req/min per IP.

Premium

Base URL: https://orcalayer.com/api/public/v1

Real-time whale-alerts, SSE live feeds, deep analytics (whale history/backtest, hot markets, AI insights). Send key via Authorization: Bearer YOUR_KEY header (fallback X-API-Key). 600 req/min per account, all keys together.

Keys start with sk_orca_ and are 40 characters long. Either header works on both namespaces โ€” X-API-Key: YOUR_KEY or Authorization: Bearer YOUR_KEY.

Not sure whether your key is live? Ask it directly โ€” this endpoint needs no subscription and never echoes the key back:

curl -H "X-API-Key: YOUR_KEY" https://orcalayer.com/api/v2/key/verify

It reports whether the key is recognised, which header it arrived in, your plan, your rate limit and whether Premium endpoints are open to you. The API lives on orcalayer.com โ€” there is no api.orcalayer.com subdomain.

Errors: 401 missing/invalid key, 403 not a Premium plan, 429 rate limit exceeded, 500 server error.

Public Endpoints

Anonymous, rate-limited 200 req/min per IP. Base /api/v2.

Markets

Wallets

Leaderboards & Discovery

Ukraine / ISW

Premium Endpoints

Bearer token required. 600 req/min per account (all your keys together). Base /api/public/v1; market resolution events, webhooks and the window PnL leaderboard live under /api/v2 (same key). Get a Premium key on /upgrade and manage it on /settings.

Live SSE

Wallet Premium

Whale Alerts

Smart-Money Analytics

Hot & Resolved Markets

Whale Deep-Dive

Per-Market

Screener

Weather (history & bulk)

Order book history

Market resolution events

Wallet statement

Webhooks

Window PnL leaderboard

Window PnL methodology

  • โ€ข Realized PnL is Polymarket's own definition, the one behind its all-time leaderboard: a position counts as realized when its market resolves (redeemed or not) or when it is sold. After fees; maker rebates, liquidity rewards and yield are not included (the daily endpoint lists them separately as rebates_rewards_usd).
  • โ€ข A day is Polymarket's daily snapshot: it closes at Polymarket's end-of-day PnL point, a little before midnight UTC. A 7- or 30-day window is the sum of those days; every response carries the exact UTC start and end (window_start_utc, window_end_utc).
  • โ€ข Final vs provisional. A window is final once its last day is on or before settled_through; until then provisional is true and the latest days can still gain wallets whose Polymarket series has not been re-read yet. settled_through trails the latest ranked day by a few days. Polymarket books late closes on the day it processes them, so final days do not change.
  • โ€ข Gaps in Polymarket's own data (7 August, 24โ€“25 August and 14โ€“15 October 2026, the last two still being filled in by Polymarket): we do not hide the affected wallets. Their rows carry pm_data_gap with the missing volume, measured against the on-chain trades we index.
  • โ€ข rebates_rewards_usd is null on 25 August and from 12 September 2026: Polymarket stopped filling that field in its daily series (every wallet reads 0 there). Realized PnL is not affected.
  • โ€ข Coverage. Every wallet that traded on Polymarket since 1 June 2026 (about 1.19 million). A wallet that trades for the first time joins the next night; coverage.not_collected_yet shows how many and what share of volume. History starts on 1 June 2026; rankings are rebuilt every night.

Business Endpoints

Business plan: everything in Premium, plus 3,000 req/min with no daily cap, whale and wallet trade webhooks (up to 5 webhooks in all), CSV exports (a wallet's full history, a whole realized-PnL ranking) and the commercial license (use the data in products and services you provide to others). Same API key, sent as X-API-Key or Authorization: Bearer. Base /api/v2/business. See /pricing and code samples on /developers.

Exports

Public base: /api/v2 ยท Premium base: /api/public/v1 ยท Business base: /api/v2/business ยท Data updates in batches, typically 15-20s behind chain ยท 1.5B+ fills indexed