🚀 Big News:Socket Has Acquired Secure Annex.Learn More
Socket
Book a DemoSign in
Socket

@tinyhttp/rate-limit

Package Overview
Dependencies
Maintainers
2
Versions
47
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@tinyhttp/rate-limit

Basic IP rate-limiting middleware for tinyhttp. Use to limit repeated requests to public APIs and/or endpoints such as password reset.

latest
Source
npmnpm
Version
2.1.8
Version published
Weekly downloads
158
-38.76%
Maintainers
2
Weekly downloads
 
Created
Source

@tinyhttp/rate-limit

npm (scoped) npm

Basic rate-limiting middleware for tinyhttp. Used to limit repeated requests to public APIs and/or endpoints such as password reset.

Install

pnpm i @tinyhttp/rate-limit

Usage

import { App } from '@tinyhttp/app'
import { rateLimit } from '@tinyhttp/rate-limit'

new App().get('limited-route', rateLimit({ max: 10, windowMs: 60 * 1000 /* 1 minute */ }), (_, res) =>
  res.send('Limited route')
)

Options

NameTypeDefaultDescription
windowMsnumber5000Timeframe for which requests are checked/remembered.
maxnumber | ((req: Request, res: Response) => Promise)5Max number of connections during windowMs before sending a 429 response.
messagestringToo many requests, please try again later.Error message sent to user when max is exceeded.
statusCodenumber429HTTP status code returned when max is exceeded.
skipFailedRequestsbooleanfalseWhen set to true, failed requests won't be counted.
skipSuccessfulRequestsbooleanfalseWhen set to true successful requests (response status < 400) won't be counted.
keyGenerator(req: Request, res: Response) => string(req) => req.ipFunction used to generate keys.
shouldSkip(req: Request, res: Response) => boolean() => falseDetermine per request if it should be skipped by the middleware
onLimitReachedonLimitReached: (req: Request, res: Response) => void() => {}Function that is called the first time a user hits the rate limit within a given window.
storeStoreMemoryStoreBy default a MemoryStore is used. Rate Limit Redis, Rate Limit Memcached and Rate Limit Mongo can be used too.

Alternatives

Keywords

tinyhttp-rate-limit

FAQs

Package last updated on 15 Apr 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts