Polymarket API rate limits — Gamma, Data & CLOB
डिवेलपर्स के लिए सटीक दस्तावेज़: Polymarket API की रेट-लिमिट्स (Gamma /markets, संयुक्त लिस्टिंग कैप्स, समग्र सीमाएँ) और थ्रॉटलिंग से बचने की व्यावहारिक रणनीतियाँ।
Polymarket API rate limits — Gamma, Data & CLOB
Polymarket API रेट-लिमिट्स वे थ्रॉटल्स हैं जिनके आसपास आपको बोट, डैशबोर्ड, या एनालिटिक्स बनाते समय डिज़ाइन करना चाहिए। यह गाइड प्रत्येक पब्लिक सरफेस (Gamma, Data, CLOB, और Market WebSocket) के दस्तावेजीकृत लिमिट्स बताता है, Gamma /markets के महत्वपूर्ण प्रतिबंधों (जैसे /markets के 300 req / 10 s नियम और करसर-बेस्ड पेजिनेशन) को समझाता है, और ठोस रणनीतियाँ देता है — बैचिंग, कैशिंग, करसर पेजिनेशन, एक्सपोनेंशियल बैकऑफ — ताकि आपका क्लाइंट लोड के तहत विश्वसनीय रहे।
Key takeaways
- Gamma का
/marketsएंडपॉइंट: 300 requests प्रति 10 सेकंड; पेजिनेशन के लिएlimitपैरामीटर औरafter_cursorका उपयोग करें (कृपयाoffsetका उपयोग न करें)। - संयुक्त लिस्टिंग सीमाएँ:
/markets+/eventsलिस्टिंग कॉल्स पर साझा 900 req / 10 s कैप; Gamma समग्र: 4000 req / 10 s। - विशेष पढ़ाइयों के लिए CLOB और Data APIs का उपयोग करें; CLOB ट्रेडिंग कॉल्स के लिए API key + HMAC चाहिए, पढ़ाइयाँ सार्वजनिक हैं।
- WebSocket (
wss://ws-subscriptions-clob.polymarket.com/ws/market) रीयल‑टाइम डेटा प्रदान करता है; लाइव बुक अपडेट्स के लिए पोलिंग के बजाय WS को प्राथमिकता दें। - निवारक पैटर्न: रिक्वेस्ट कोएलेसिंग, कैश TTLs, जिटर के साथ एक्सपोनेंशियल बैकऑफ, रेट-एवेयर क्यूइंग, और पेजिनेशन-एवेयर फ़ेचिंग।
Why rate limits matter
रेट-लिमिट्स Polymarket के साझा इंफ्रास्ट्रक्चर की रक्षा करते हैं और शोर करने वाले क्लाइंट्स से दूसरों का अनुभव खराब होने से रोकते हैं। Arbitrage बोट्स या एनालिटिक्स सिस्टम बनाते समय, सीमा हिट होने पर रिक्वेस्ट तुरंत रिजेक्ट हो जाती है और समय-सम्वेदनशील फ्लो टूट सकते हैं। पहले से रिक्वेस्ट पैटर्न की योजना बनाना आश्चर्य कम करता है और सिस्टम को अधिक मज़बूत बनाता है।
Documented Polymarket rate limits and endpoints
Gamma (primary market metadata)
- Base URL: https://gamma-api.polymarket.com
- Notable limits:
/markets: अधिकतम 300 requests प्रति 10 सेकंड। पेजिनेशन के लिएlimitपैरामीटर (max 1000) औरafter_cursorका उपयोग करें। APIoffsetको HTTP 422 के साथ रिजेक्ट कर देता है।- संयुक्त
/markets+/eventsलिस्टिंग लिमिट: 900 requests प्रति 10 सेकंड। - समग्र Gamma API सरफेस: 4000 requests प्रति 10 सेकंड।
Practical notes:
- हमेशा पिछले कॉल द्वारा लौटाया गया
after_cursorप्राथमिकता दें;offsetजैसा की-सेट इम्यूलेशन करने का प्रयास न करें। - राउंड‑ट्रिप घटाने के लिए
limitको ट्यून करें। यदि आपको पूर्ण मार्केट सूची चाहिए तोlimit=1000कॉल्स घटाता है।
Data (positions, trades, holders)
- Base URL: https://data-api.polymarket.com
- Auth: सार्वजनिक पढ़ाइयों के लिए कोई Auth नहीं।
- संक्षेप में यह सरफेस दस्तावेज़ित है पर Data के प्रति‑एंडपॉइंट रेट‑नंबर यहाँ सूचीबद्ध नहीं हैं। Data को सार्वजनिक मानें, पर Gamma की तरह ही रूढ़िवादी क्लाइंट-साइड नियंत्रण लागू करें (बैचिंग, कैशिंग, बैकऑफ)।
CLOB (order book and trading)
- Base URL: https://clob.polymarket.com
- पढ़ाइयाँ सार्वजनिक हैं। ट्रेडिंग के लिए API key + HMAC चाहिए।
- CLOB सरफेस ऑर्डर बुक, midpoint, प्राइस हिस्ट्री, और ऑर्डर प्लेस/कैंसल एक्सपोज़ करता है। दस्तावेज़ CLOB पढ़ाइयों के लिए स्पष्ट प्रति‑एंडपॉइंट रेट‑नंबर प्रकाशित नहीं करता; ट्रेडिंग पाथ्स को रेट‑सेंसिटिव मानें और जब संभव हो लाइव बुक डेटा के लिए CLOB WebSocket या Market WS का उपयोग करें।
Market WebSocket (real-time market updates)
- URL: wss://ws-subscriptions-clob.polymarket.com/ws/market
- मार्केट डेटा के लिए कोई ऑथ नहीं चाहिए।
- फीड्स: रीयल‑टाइम बुक, price_change, best_bid_ask (सक्रिय करने के लिए custom_feature_enabled: true), last_trade_price, tick_size_change।
- PING हार्टबीट हर 10 सेकंड पर। प्रति कनेक्शन अधिकतम 500 इंस्ट्रूमेंट्स।
Gamma /markets specifics you must follow
- पेजिनेशन: केवल
after_cursor। APInext_cursorलौटाता है — उसे बिना बदले अगली कॉल में पास करें। limitडिफ़ॉल्ट 20 है, अधिकतम 1000। बल्क‑सिंक के लिए बड़ेlimitका उपयोग करें।- स्वीकार किए गए फ़िल्टर पैरामीटर्स में
slug,id,condition_ids,clob_token_ids,question_ids,market_maker_addressजैसी ऐरे-प्रकार की मान्यताएँ शामिल हैं और अन्य जैसेclosed,active,archived,tag_id। - ऑर्डरिंग:
orderकॉमा-सेपरेटेड फ़ील्ड लिस्ट स्वीकार करता है (उदा.volume24hr,liquidity) औरascendingबूलियन है जिसका डिफ़ॉल्ट true है।
Common error signals and how to react
- HTTP 429 (rate limited): तुरंत पोलिंग बंद करें, बैकऑफ लागू करें, और जिटर के साथ एक्सपोनेंशियल बैकऑफ के साथ रीट्राय करें।
- HTTP 422 जब आप
offsetका उपयोग करते हैं:after_cursorपेजिनेशन पर स्विच करें। - आंशिक रिस्पॉन्स या खाली पेजेस: करसर का सम्मान करें; अपने फ़िल्टर सत्यापित करें। यदि आपको लगता है कि आपने सर्वर‑साइड कोटा हिट कर लिया है, तो क्लाइंट की समकालिकता कम करें।
Design patterns to avoid throttles
- Cache aggressively
- मार्केट लिस्ट्स और मेटाडेटा को छोटे TTLs (30s–2m) के लिए कैश करें, उपयोग के अनुसार। मार्केट्स और इवेंट लिस्ट्स शायद हर सेकंड नहीं बदलते।
- क्वेरी की (फिल्टर + ऑर्डर) द्वारा कैश करें। केवल तब इनवैलिडेट करें जब आप चेंज इवेंट (उदा. WebSocket से) पाते हैं या TTL एक्सपायर हो जाए।
- Batch and increase
limit
- फुल‑सिंक के लिए
/marketsपरlimit=1000का उपयोग करें ताकि राउंड‑ट्रिप घटें। - ऑफ‑पीक विंडो में चौड़े पेज खींचें और WebSocket से इनक्रिमेंटल अप्डेट्स लें।
- Use the WebSocket for real-time data
- लाइव ऑर्डर‑बुक अपडेट्स या प्राइस मूवमेंट्स के लिए Market WS को सब्सक्राइब करें बजाए Gamma या CLOB पढ़ाइयों को पोल करने के। WS प्रति कनेक्शन 500 इंस्ट्रूमेंट्स तक सपोर्ट करता है; यदि आपको >500 चाहिए तो क्लाइंट्स को शार्ड करें।
- Rate-aware queuing and backoff
- एक लेकी‑बकेट या टोकन‑बकेट क्लाइंट-साइड लिमिटर लागू करें जो दस्तावेजीकृत पीक्स से मेल खाता हो (उदा.
/marketsके लिए 300/10s)। - जब आप 429 प्राप्त करें, तो एक्सपोनेंशियल बैकऑफ with जिटर लागू करें और धीरे‑धीरे retry विंडो बढ़ाएँ।
- Coalesce identical concurrent requests
- यदि आपकी ऐप के कई हिस्से समान
/marketsक्वेरी एक साथ अनुरोध कर रहे हैं, तो उन्हें एकल इन‑फ्लाइट रिक्वेस्ट में कोएल्लेस करें और रिस्पॉन्स फैन्‑आउट करें।
- Cursor-first synchronization
- हमेशा करसर‑बेस्ड पेजिनेशन का पालन करें। लाइव सिंक के लिए पहले पेज का अनुरोध करें फिर डेल्टास के लिए सब्सक्राइब करें यदि समर्थित हो। Gamma के प्रति‑एंडपॉइंट लिमिट को पार कर सकने वाली naїve समकालिक करसर फेचेज़ का प्रयास न करें।
Example fetch strategies
- Bulk indexing job (non-real-time):
/markets?limit=1000फ़ेच करें और फिरnext_cursorका पालन करें जब तक खत्म न हो। पेजेस के बीच थोड़ी नींद लें और 300/10s एंडपॉइंट लिमिट का सम्मान करें। - Near-real-time UI: बेस सेट एक बार फ़ेच करें (30s के लिए कैश), फिर डेल्टास और best_bid_ask अपडेट्स के लिए WebSocket खोलें।
- Watchlist micro-client: यदि >500 इंस्ट्रूमेंट्स हैं तो वॉचलिस्ट को कई WS कनेक्शनों में शार्ड करें।
Operational guidance for bots and high-throughput clients
- बुक‑लेवल डेटा के लिए CLOB WebSocket या CLOB पढ़ाइयों का उपयोग करें और धीमी मेटाडेटा के लिए Gamma का उपयोग करें।
- ट्रेडिंग प्रमाण‑पत्र (CLOB API key + HMAC) को सुरक्षित रखें; ट्रेडिंग एंडपॉइंट्स ऑथेंटिकेटेड हैं।
- अपने 429 रेट और प्रति‑एंडपॉइंट लेटेंसी मैट्रिक्स की निगरानी रखें। यदि आप नियमित रूप से दस्तावेजीकृत कैप्स के करीब पहुँच रहे हैं, तो एक्सेस के लिए अनुरोध करें या आधिकारिक Polymarket चैनलों के माध्यम से संपर्क करें (उच्च‑वॉल्यूम इंटीग्रेशन और एट्रिब्यूशन के लिए Builder Program रास्ता है)।
How this affects your development and deployment
यदि आप ट्रेडिंग बोट या एनालिटिक्स सर्विस बनाते हैं, तो लेयर्ड डेटा फ़्लो की योजना बनाएं: बड़े limit के साथ Gamma से प्रारंभिक बल्क फ़ेच, उसके बाद लाइव अपडेट्स के लिए WebSocket सब्सक्रिप्शन, और WS फ़ीड में नहीं होने वाले किसी भी मेटाडेटा के लिए छोटे निर्धारित अंतराल पर कैश्ड Gamma पोल्स। क्लाइंट‑साइड रेट लिमिटिंग, कोएलेसिंग, और करसर‑अवेयर पेजिनेशन लागू करें ताकि दस्तावेजीकृत /markets 300 req / 10 s कैप और संयुक्त लिस्टिंग व समग्र Gamma कैप्स न मारे जाएँ।
Closing summary
Gamma की लिस्टिंग सतहों के लिए Polymarket API रेट‑लिमिट्स स्पष्ट हैं और लाइव फीड्स के लिए Market WS एक स्केलेबल विकल्प प्रदान करता है। करसर‑बेस्ड पेजिनेशन (after_cursor) के चारों ओर डिज़ाइन करें, limit का रणनीतिक उपयोग करें, और उच्च‑फ्रीक्वेंसी डेटा के लिए WebSockets को प्राथमिकता दें। इन पैटर्न्स का पालन करने से थ्रॉटलिंग कम होगी और आपकी इंटीग्रेशन अधिक विश्वसनीय बनेगी।
Frequently asked questions
What is the /markets rate limit on Gamma?
Gamma का /markets एंडपॉइंट 300 requests प्रति 10 सेकंड तक सीमित है। limit (max 1000) और करसर‑बेस्ड पेजिनेशन के लिए after_cursor का उपयोग करें। offset का उपयोग न करें — API इसे HTTP 422 के साथ रिजेक्ट कर देता है।
Are there combined limits for Gamma endpoints?
हाँ। /markets और /events पर होने वाली लिस्टिंग कॉल्स पर साझा 900 requests प्रति 10 सेकंड का कैप है। इसके अतिरिक्त, समग्र Gamma API सरफेस 4000 requests प्रति 10 सेकंड तक सीमित है।
Should I poll Gamma or use the WebSocket for live updates?
लाइव बुक और प्राइस अपडेट्स के लिए Market WebSocket (wss://ws-subscriptions-clob.polymarket.com/ws/market) को प्राथमिकता दें — यह अधिक कुशल है और बार‑बार पोलिंग से बचाता है। धीमे बदलने वाले मेटाडेटा और प्रारंभिक बल्क सिंक के लिए Gamma का उपयोग करें।
What should my client do on HTTP 429 responses?
429 को आक्रामक पोलिंग रोकने का संकेत समझें। एक्सपोनेंशियल बैकऑफ with जिटर लागू करें, समकालिकता कम करें, और समान अनुरोधों को कोएलेस करें। अपने रेट‑लिमिटर को डायनामिक रूप से समायोजित करने के लिए 429s को ट्रैक करें।
Does the CLOB API require authentication?
CLOB पढ़ाइयाँ सार्वजनिक हैं। CLOB पर ट्रेडिंग ऑपरेशन्स के लिए API key प्लस HMAC ऑथेंटिकेशन आवश्यक है। ट्रेडिंग रेट‑लिमिट्स का सम्मान करें और बुक अपडेट्स के लिए WS फीड्स को प्राथमिकता दें।
संबंधित मार्गदर्शक
सिर्फ़ शैक्षिक जानकारी। वित्तीय, कानूनी या कर संबंधी सलाह नहीं। संभावित रूप से आपका क्षेत्र Polymarket के लिए उपलब्ध नहीं हो सकता।