What Broke in the Polymarket V2 Migration? Fixes for Your Bot (2026)
The April 28, 2026 hard cutover retired Polymarket’s V1 stack: the old py-clob-client package stopped working, V1-signed orders were rejected on production, and Data API v2 became the primary surface. Bots that didn’t migrate went silent that day. The fix is a four-step migration — swap the SDK, re-sign credentials, move endpoints, and relearn the rate-limit behavior.
What exactly changed?
| Area | V1 (before Apr 28, 2026) | V2 (current) |
|---|---|---|
| Python SDK | py-clob-client | py-clob-client-v2 |
| Order signing | V1 signature format | V2 signatures only |
| Data API | v1 paths primary | /v2 endpoints primary |
| Leaderboard | Separate host | Folded into Data API |
| Rate limits | IP-based only | IP-based + per-signer token buckets |
| Collateral | USDC.e era | pUSD standard |
How do I migrate in four steps?
Migrating is four steps: swap py-clob-client for py-clob-client-v2, re-derive API credentials with the new client, re-approve allowances for the exchange contract, and re-run the backtest suite against the new order-signature path.
1. Swap the SDK
pip uninstall py-clob-client
pip install py-clob-client-v2
Import paths change (py_clob_client → py_clob_client_v2); the client-constructor
shape stays similar enough that most code diffs are imports and a few renamed args.
2. Re-derive credentials
V2 re-signed the credential flow — derive fresh apiKey/secret/passphrase with the new client rather than assuming the old triple carries over:
from py_clob_client_v2.client import ClobClient
client = ClobClient(host, key=PROXY_KEY, chain_id=137,
signature_type=1, funder=PROXY_ADDRESS)
creds = client.create_or_derive_api_creds()
3. Move endpoints
/v2/positions,/v2/trades,/v2/activity,/v2/prices-history- Leaderboard calls → Data API base
- Anything still hitting v1 paths: works, but frozen — new features land in v2
4. Re-learn rate limits
The per-signer token buckets changed order-placement budgeting: your bot now has
an order bucket and a cancel bucket with tier-based refill. Batches are
all-or-nothing at the limit check; cancel-all costs 1 + the number of orders
cancelled. Log the Poly-RateLimit-* headers — they’re the new telemetry.
What silently broke that people missed?
- Cached credentials in config — old triples fail intermittently, which looks like flaky networking, not migration debt
- Backtested assumptions on fees — the fee regimes (spot formula vs perps tiers) diverged; backtests spanning the cutover need regime-aware fee models
- WebSocket assumptions — reconnect/reconcile logic written for V1 event shapes needs re-verification against V2 payloads
- Version pinning — environments that floated on
py-clob-clientlatest picked up a dead package; pinpy-clob-client-v2explicitly
What is the pre-flight checklist?
[ ] py-clob-client-v2 pinned in requirements
[ ] Fresh credentials derived and stored
[ ] All Data API calls on /v2 paths
[ ] Leaderboard host removed
[ ] Rate-limit headers logged, backoff honors Retry-After
[ ] One live test order on a cheap market
[ ] Position/balance reconciliation vs Data API passes
[ ] Kill switch fires and cancels under V2
FAQ
Q: When did Polymarket force the V2 migration? A: April 28, 2026 — the hard cutover. V1-signed orders stopped working on production that day; there was no compatibility window for old signatures.
Q: Is my old bot dead, or fixable? A: Fixable in hours: swap the package, re-derive credentials, move endpoints, and re-test. Most breakage is imports and stale credentials, not strategy logic.
Q: Did fees change with V2? A: The fee systems split further: spot event markets kept the category formula, while perps run their own volume-tiered schedule. Backtests crossing the cutover should switch fee models at the boundary.
Q: Do I need new API keys? A: Re-derive them with the V2 client — treat the old triple as expired rather than debugging intermittent 401s.
Q: What if my bot trades both spot and perps? A: Migrate both surfaces; perps have their own auth conventions (EOA-keyed accounts, proxy signing) documented separately from the spot CLOB.
Sources
Disclaimer
Not financial advice. Educational purposes only. Updated October 2026.