windowMs |
number |
How long to remember requests for, in milliseconds. |
limit |
number | function |
How many requests to allow. |
message |
string | json | function |
Response to return after limit is reached. |
statusCode |
number |
HTTP status code after limit is reached (default is 429). |
handler |
function |
Function to run after limit is reached (overrides message and statusCode settings, if set). |
legacyHeaders |
boolean |
Enable the X-Rate-Limit header. |
standardHeaders |
'draft-6' | 'draft-7' | 'draft-8' |
Enable the Ratelimit header. |
identifier |
string | function |
Name associated with the quota policy enforced by this rate limiter. |
store |
Store |
Use a custom store to share hit counts across multiple nodes. |
passOnStoreError |
boolean |
Allow (true) or block (false, default) traffic if the store becomes unavailable. |
keyGenerator |
function |
Identify users (defaults to IP address). |
ipv6Subnet |
number (32-64) | function | false |
How many bits of IPv6 addresses to use in default keyGenerator |
requestPropertyName |
string |
Add rate limit info to the req object. |
skip |
function |
Return true to bypass the limiter for the given request. |
skipSuccessfulRequests |
boolean |
Uncount 1xx/2xx/3xx responses. |
skipFailedRequests |
boolean |
Uncount 4xx/5xx responses. |
requestWasSuccessful |
function |
Used by skipSuccessfulRequests and skipFailedRequests. |
validate |
boolean | object |
Enable or disable built-in validation checks. |
logger |
Logger |
Custom logger |