pub struct RateLimiter { /* private fields */ }Expand description
Holds all rate limiters for one API surface.
Created via factory methods like RateLimiter::clob_default() which
configure hardcoded limits matching Polymarket’s documented rate limits.
Implementations§
Source§impl RateLimiter
impl RateLimiter
Sourcepub async fn acquire(&self, path: &str, method: Option<&Method>)
pub async fn acquire(&self, path: &str, method: Option<&Method>)
Await the appropriate limiter(s) for this endpoint.
Always awaits the default (general) limiter, then additionally awaits the first matching endpoint-specific limiter (burst + sustained).
Sourcepub fn clob_default() -> Self
pub fn clob_default() -> Self
CLOB API rate limits.
- General: 9,000/10s
- POST /order: 3,500/10s burst + 36,000/10min sustained
- DELETE /order: 3,000/10s
- Market data (/markets, /book, /price, /midpoint, /prices-history, /neg-risk, /tick-size): 1,500/10s
- Ledger (/trades, /data/): 900/10s
- Auth (/auth): 100/10s
Sourcepub fn gamma_default() -> Self
pub fn gamma_default() -> Self
Gamma API rate limits.
- General: 4,000/10s
- /events: 500/10s
- /markets: 300/10s
- /public-search: 350/10s
- /comments: 200/10s
- /tags: 200/10s
Sourcepub fn data_default() -> Self
pub fn data_default() -> Self
Data API rate limits.
- General: 1,000/10s
- /trades: 200/10s
- /positions and /closed-positions: 150/10s
Sourcepub fn relay_default() -> Self
pub fn relay_default() -> Self
Relay API rate limits.
- 25 requests per 1 minute (single limiter, no endpoint-specific limits)
Trait Implementations§
Source§impl Clone for RateLimiter
impl Clone for RateLimiter
Source§fn clone(&self) -> RateLimiter
fn clone(&self) -> RateLimiter
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for RateLimiter
impl RefUnwindSafe for RateLimiter
impl Send for RateLimiter
impl Sync for RateLimiter
impl Unpin for RateLimiter
impl UnsafeUnpin for RateLimiter
impl UnwindSafe for RateLimiter
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more