Developer-first auth email infrastructure

One account for every domain you ship.

LoginRelay is the auth email control plane for indie portfolios, agency microsites, and multi-domain product stacks. OTP is the product. Shared auth-center login is the workspace boundary.

OTP first365-day creditsSES + Cloudflare baselineMinimal owner admin
$ POST /v1/send-otp
Authorization: Bearer lr_test_xxxxx_secret
Content-Type: application/json

{
  "from": "auth@project-a.com",
  "email": "builder@example.com",
  "purpose": "login"
}

# 202 Accepted
{
  "ok": true,
  "challengeId": "chl_123",
  "expiresAt": "2026-03-21T12:00:00Z"
}

$ POST /v1/verify-otp
Authorization: Bearer lr_test_xxxxx_secret
Content-Type: application/json

{
  "email": "builder@example.com",
  "code": "123456",
  "challengeId": "chl_123"
}

# 200 OK
{
  "ok": true,
  "verified": true,
  "challengeId": "chl_123",
  "verifiedAt": "2026-03-21T12:02:00Z"
}

# dashboard and /admin use your auth center
$ GET /auth/start?next=/dashboard

# support intake
$ mailto:support@loginrelay.com

Portfolio domains

3-50

The default buyer profile this product is optimized for.

Paid credit window

365 days

Top-ups extend remaining paid credits instead of expiring monthly.

Auth split

OTP + Auth Center

OTP for the product API, shared auth center for the workspace.

Why this shape works

Separate product auth from workspace auth.

LoginRelay still sells OTP and later magic-link primitives to your users. The LoginRelay dashboard itself signs in through your shared auth center and creates its own local session after token exchange.

Support policy

support@loginrelay.com

Email support@loginrelay.com. Replies may temporarily come from the operator mailbox while branded outbound support is being finalized.

Launch tracks

What this repo now ships as a baseline

  • Public site, pricing, and docs shell
  • Shared auth-center login with local session creation
  • Customer dashboard plus owner-only minimal admin
  • Domain verification, wallet ledger, OTP send and verify

Working rules

Built to improve the shared skill system too

  • Per-project admin stays minimal and purpose-shaped.
  • The owner super-admin resolves from the QQ Gmail account.
  • We keep public support mail domain-based and operator-safe.
  • We use this repo to harden reusable skills for future projects.