# POST /auth/resend-verification

> Resend the email verification link

Resend the email verification link to the user. Use when the user didn't receive the first email or the link expired.

  **Rate limiting:** Resend is rate-limited per email to prevent abuse.

## Endpoint

```http
POST /v1/public/projects/:projectSlug/auth/resend-verification
```

## Request Parameters

### Path Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `projectSlug` | string | ✅ | Your project's unique slug |

### Request Body

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `email` | string | ✅ | User's email address |

### Example Request Body

```json
{
  "email": "user@example.com"
}
```

## Response

### Success (200 OK)

```json
{
  "message": "If your email is not verified, you will receive a new verification link shortly."
}
```

A new verification email is sent. The previous token (if any) may be invalidated.

### Error Responses

| Status Code | Error Code | Description |
|-------------|------------|-------------|
| 400 | `INVALID_REQUEST` | Invalid email |
| 404 | `USER_NOT_FOUND` | No user with this email |
| 429 | `RATE_LIMIT_EXCEEDED` | Too many resend requests |
| 500 | `INTERNAL_SERVER_ERROR` | Server error |

## Available Hooks

- **Event**: `auth.email.resend_verification`
  - **When**: After resend is triggered
  - **Can do**: Track verification reminders, push to monitoring

Configure in **Project → Hooks**. [Learn more about hooks →](/features/hooks)

## Related Endpoints

- [GET /auth/verify-email](/reference/authentication/verify-email) - Verify email with token
- [POST /auth/register](/reference/authentication/register) - Sign up
