stack/apps/e2e
Aman Ganapathy 4f34200db9
[Feat] Setup new route for email monitoring (#1095)
### Summary of Changes
We need a way to tell if our email service is working. So, we set up a
route that will be periodically hit by uptime kuma. This route tries to
sign up to stack auth.
Upon signing up, an verification email will be sent. We use resend to
check the inbox and return a success if the email is found.
We use resend to setup a test email domain, and we query that domain to
see if the email has been received. In test environments/dev, we use
inbucket instead. This route also requires a secret token, which can be
configured via `.env` variables.

### Necessary config changes

Note we add several new environment variables which will need to be
populated in prod.
Also, the [config settings for
resend](https://resend.com/docs/send-with-smtp) are as follows:

1. **Host:** `smtp.resend.com`
2. **Port:** `465`
3. **Username:** `resend`
4. **Password:** `<RESEND_API_KEY>`
These may need to be set up in docker to enable emails being sent out to
resend.

To set this up with uptime kuma, follow the steps below:

1. Create a new monitor
2. Set the monitor type to `HTTP(s)`
3. The URL should hit the `/health/email` endpoint.
4. Suggested request timeout is at least 120 seconds. Reading emails
from the resend inbox can take a bit of time.
5. In headers, set the header as below:
```
{
    "authorization": "Bearer <STACK_EMAIL_MONITOR_SECRET_TOKEN>"
}
```
2026-01-28 19:09:47 -08:00
..
tests [Feat] Setup new route for email monitoring (#1095) 2026-01-28 19:09:47 -08:00
.env Upgrade Prisma to v7 (#1064) 2025-12-26 08:13:34 -08:00
.env.development [Feat] Setup new route for email monitoring (#1095) 2026-01-28 19:09:47 -08:00
.eslintrc.cjs tsup for stack-shared (#647) 2025-04-28 21:26:52 -07:00
LICENSE Create users & auth endpoints in backend (#85) 2024-07-01 22:42:08 -07:00
package.json chore: update package versions 2026-01-27 12:33:28 -08:00
tsconfig.json In-source unit tests (#429) 2025-02-14 11:47:52 -08:00
vitest.config.ts Email outbox backend (#1030) 2025-12-12 10:26:38 -08:00