apps/docs/content/guides/deployment/going-into-prod.mdx
After developing your project and deciding it's production ready, you should run through this checklist to ensure that your project:
Check and review issues in your database using Security Advisor.
</Admonition>Check and review issues in your database using Performance Advisor.
</Admonition>pg_stat_statements can help you identify hot or slow queries.Running databases is a shared responsibility between you and Supabase. There are some things that we can take care of for you, and some things that you are responsible for.
Read more details in our Shared Responsibility Model guide.
</Admonition>| Endpoint | Path | Limited By | Rate Limit |
|---|---|---|---|
| All endpoints that send emails | /auth/v1/signup /auth/v1/recover /auth/v1/user[^1] | Sum of combined requests | As of 3 Sep 2024, this has been updated to <SharedData data="config">auth.rate_limits.email.inbuilt_smtp_per_hour.value</SharedData> emails per hour. You can only change this with your own custom SMTP setup. |
| All endpoints that send One-Time-Passwords (OTP) | /auth/v1/otp | Sum of combined requests | Defaults to 360 OTPs per hour. Is customizable. |
| Send OTPs or magic links | /auth/v1/otp | Last request | Defaults to 60 seconds window before a new request is allowed. Is customizable. |
| Signup confirmation request | /auth/v1/signup | Last request | Defaults to 60 seconds window before a new request is allowed. Is customizable. |
| Password Reset Request | /auth/v1/recover | Last request | Defaults to 60 seconds window before a new request is allowed. Is customizable. |
| Verification requests | /auth/v1/verify | IP Address | 360 requests per hour (with bursts up to 30 requests) |
| Token refresh requests | /auth/v1/token | IP Address | 1800 requests per hour (with bursts up to 30 requests) |
| Create or Verify an MFA challenge | /auth/v1/factors/:id/challenge /auth/v1/factors/:id/verify | IP Address | 15 requests per minute (with bursts up to 30 requests) |
| Anonymous sign-ins | /auth/v1/signup[^2] | IP Address | 30 requests per hour (with bursts up to 30 requests) |
GET request to the reset password link or sign-up link in your email. Since links in Supabase Auth are single-use, a user who opens an email post-scan to click on a link will receive an error. To get around this problem, consider altering the email template to replace the original magic link with a link to a domain you control. The domain can present the user with a "Sign-in" button, which redirects the user to the original magic link URL when clicked.