Skip to content

PostgresRateLimitStore

Defined in: src/adapters/postgres.ts:136

Rate limit store backed by PostgreSQL using atomic upsert.

Uses INSERT ... ON CONFLICT DO UPDATE with a CASE expression to atomically reset or increment the counter in a single query.

new PostgresRateLimitStore(client, table): PostgresRateLimitStore

Defined in: src/adapters/postgres.ts:137

PostgresClient

string

PostgresRateLimitStore

cleanup(): Promise<void>

Defined in: src/adapters/postgres.ts:176

Remove expired entries. Call periodically (e.g. via cron or waitUntil).

Promise<void>


increment(key, windowSeconds): Promise<{ count: number; resetAt: number; }>

Defined in: src/adapters/postgres.ts:142

Increment the counter for a key, returning the new count and TTL

string

number

Promise<{ count: number; resetAt: number; }>

RateLimitStore.increment