> ## Documentation Index
> Fetch the complete documentation index at: https://docs.modelence.com/llms.txt
> Use this file to discover all available pages before exploring further.

# AuthRateLimitsConfig

[API Reference](/api-reference/modelence/server/type-aliases/../../../index) / [modelence](/api-reference/modelence/server/type-aliases/../../index) / [server](/api-reference/modelence/server/type-aliases/../index) / AuthRateLimitsConfig

> **AuthRateLimitsConfig** = `object`

Defined in: [packages/modelence/src/app/authConfig.ts:73](https://github.com/modelence/modelence/blob/f614ecc6811cdda9670d612872c8ff49a49c5e28/packages/modelence/src/app/authConfig.ts#L73)

Per-action rate limit overrides for authentication endpoints.

Each bucket accepts an array of rules that are merged into the built-in
defaults by `(type, window)` tuple:

* A rule whose `(type, window)` matches a default replaces that default's
  `limit`.
* A rule whose `(type, window)` does not match any default is added as
  an extra rule for the bucket.
* Defaults whose `(type, window)` is not overridden are kept.

This means you can tighten a single window without accidentally dropping
the other built-in protections for that bucket.

## Examples

```typescript theme={null}
import { startApp } from 'modelence/server';
import { time } from 'modelence';

startApp({
  auth: {
    rateLimits: {
      signup: [
        { type: 'ip', window: time.minutes(15), limit: 5 },
      ],
    },
  },
});
```

```typescript theme={null}
startApp({
  auth: {
    rateLimits: {
      signup: [
        { type: 'ip', window: time.minutes(1), limit: 2 },
      ],
    },
  },
});
```

## Properties

| Property                                  | Type                                                                                             | Description                                                             | Defined in                                                                                                                                                                       |
| ----------------------------------------- | ------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <a id="passwordreset" /> `passwordReset?` | [`AuthRateLimitOverride`](/api-reference/modelence/server/type-aliases/AuthRateLimitOverride)\[] | Rate limits for password reset requests.                                | [packages/modelence/src/app/authConfig.ts:83](https://github.com/modelence/modelence/blob/f614ecc6811cdda9670d612872c8ff49a49c5e28/packages/modelence/src/app/authConfig.ts#L83) |
| <a id="signin" /> `signin?`               | [`AuthRateLimitOverride`](/api-reference/modelence/server/type-aliases/AuthRateLimitOverride)\[] | Per-IP limits for login attempts.                                       | [packages/modelence/src/app/authConfig.ts:79](https://github.com/modelence/modelence/blob/f614ecc6811cdda9670d612872c8ff49a49c5e28/packages/modelence/src/app/authConfig.ts#L79) |
| <a id="signup" /> `signup?`               | [`AuthRateLimitOverride`](/api-reference/modelence/server/type-aliases/AuthRateLimitOverride)\[] | Per-IP limits for the signup endpoint (successful signups only).        | [packages/modelence/src/app/authConfig.ts:75](https://github.com/modelence/modelence/blob/f614ecc6811cdda9670d612872c8ff49a49c5e28/packages/modelence/src/app/authConfig.ts#L75) |
| <a id="signupattempt" /> `signupAttempt?` | [`AuthRateLimitOverride`](/api-reference/modelence/server/type-aliases/AuthRateLimitOverride)\[] | Per-IP limits for signup attempts (checked before duplicate detection). | [packages/modelence/src/app/authConfig.ts:77](https://github.com/modelence/modelence/blob/f614ecc6811cdda9670d612872c8ff49a49c5e28/packages/modelence/src/app/authConfig.ts#L77) |
| <a id="verification" /> `verification?`   | [`AuthRateLimitOverride`](/api-reference/modelence/server/type-aliases/AuthRateLimitOverride)\[] | Per-user limits for email verification requests.                        | [packages/modelence/src/app/authConfig.ts:81](https://github.com/modelence/modelence/blob/f614ecc6811cdda9670d612872c8ff49a49c5e28/packages/modelence/src/app/authConfig.ts#L81) |
