Member Junction
    Preparing search index...

    Token-bucket rate limiter with exponential backoff for API calls.

    Enforces configurable requestsPerMinute and tokensPerMinute limits. When a limit is hit, Acquire() blocks until capacity is available. On 429/rate-limit errors, use ReportRateLimitError() to trigger exponential backoff (1s → 2s → 4s → ... → 60s).

    Usage:

    const limiter = new RateLimiter({ RequestsPerMinute: 60, TokensPerMinute: 100000 });

    // Before each API call:
    await limiter.Acquire(estimatedTokens);

    // If API returns 429:
    limiter.ReportRateLimitError();
    await limiter.Acquire(estimatedTokens); // will back off
    Index

    Constructors

    Methods