Source of truth: apps/marketing-web/src/app/, apps/product-web/src/app/, apps/api/src/modules/*/routes.ts, packages/user-docs/src/corpus.ts.
AutoBlocks uses two public domains. Marketing teaches and converts; product runs your account.
Domain summary
| Domain | App package | Auth required | Primary nav |
|---|
| autoblocks.pro | apps/marketing-web | No | Home, Pricing, Docs, Changelog |
| autoblocks.run | apps/product-web | Yes (most routes) | AutoBlocks, Templates, Activity, Billing, Settings |
| api.autoblocks.run | apps/api | Varies by endpoint | — |
Marketing routes (autoblocks.pro)
| Path | Page / handler | Auth | Description |
|---|
/ | app/page.tsx | No | Home — value prop, CTAs to trial |
/pricing | app/pricing/page.tsx | No | Starter/Plus comparison, billing toggle |
/docs | app/docs/page.tsx | No | Docs index — links to article slugs |
/docs/[slug] | app/docs/[slug]/page.tsx | No | Individual help articles from packages/user-docs |
/changelog | app/changelog/page.tsx | No | Product changelog |
/legal/privacy | app/legal/privacy/page.tsx | No | Privacy policy |
/legal/terms | app/legal/terms/page.tsx | No | Terms of service |
/legal/disclaimer | app/legal/disclaimer/page.tsx | No | Disclaimer |
/login | app/login/route.ts | No | Redirect → autoblocks.run/login |
/book | app/book/route.ts | No | Retired — redirects to /docs |
Marketing nav component: apps/marketing-web/src/components/marketing-nav.tsx.
| Nav item | href | External |
|---|
| Home | / | — |
| Pricing | /pricing | — |
| Docs | /docs | — |
| Changelog | /changelog | — |
| App | product root | Yes → autoblocks.run |
| Log in | product login | Yes |
| Start trial | product signup | Yes |
Product routes (autoblocks.run)
| Path | Page | Auth | Description |
|---|
/ | app/page.tsx | Redirect | Sends authenticated users to dashboard |
/signup | (auth)/signup/page.tsx | No | Create account + start trial |
/sign-up | sign-up/page.tsx | No | Alias route to signup |
/login | (auth)/login/page.tsx | No | Sign in |
/onboarding | onboarding/page.tsx | Yes | First-run wizard — template or AI path |
/routines | (dashboard)/routines/page.tsx | Yes | AutoBlock list |
/routines/new | (dashboard)/routines/new/page.tsx | Yes | Creation wizard; ?template= and ?ai=1 query params |
/routines/[id] | (dashboard)/routines/[id]/page.tsx | Yes | Detail, edit, manual run |
/templates | (dashboard)/templates/page.tsx | Yes | Template library |
/templates/[slug] | (dashboard)/templates/[slug]/page.tsx | Yes | Template detail → create from template |
/activity | (dashboard)/activity/page.tsx | Yes | Execution history |
/billing | (dashboard)/billing/page.tsx | Yes | Plan, trial, usage, checkout |
/settings | (dashboard)/settings/page.tsx | Yes | Account, theme, notifications, inbox |
Dashboard nav: apps/product-web/src/components/dashboard-nav.tsx.
| Nav item | href |
|---|
| AutoBlocks | /routines |
| Templates | /templates |
| Activity | /activity |
| Billing | /billing |
| Settings | /settings |
Key API routes (api.autoblocks.run)
| Method | Path | Auth | Purpose |
|---|
| GET | /health | No | Health check |
| POST | /auth/sign-up | No | Register |
| POST | /auth/sign-in | No | Login |
| POST | /auth/sign-out | Yes | Logout |
| GET | /auth/session | Yes | Current user + tenant |
| GET | /routines | Yes | List AutoBlocks |
| POST | /routines | Yes | Create AutoBlock |
| POST | /routines/:id/execute | Yes | Manual run |
| GET | /executions | Yes | Activity feed |
| POST | /hooks/:pathToken | No* | Inbound webhook trigger |
| GET | /billing/plans | No | Public plan catalog |
| POST | /tenants/:id/billing/checkout | Yes | Stripe checkout session |
| POST | /help/chat | No | Public help chat (marketing widget) |
| POST | /tenants/:id/ai/draft | Yes | AI draft routine |
| POST | /tenants/:id/ai/refine | Yes | AI refine draft |
| POST | /tenants/:id/ai/repair | Yes | AI repair suggestion |
| POST | /tenants/:id/ai/explain | Yes | AI explain routine |
*Webhook auth is the secret path token, not a user session.
Cross-site journey
flowchart LR
subgraph pro [autoblocks.pro]
Home["/"]
Pricing["/pricing"]
Docs["/docs"]
Help["Help chat"]
end
subgraph run [autoblocks.run]
Signup["/signup"]
Onboard["/onboarding"]
Routines["/routines"]
Billing["/billing"]
end
Home -->|"Start trial"| Signup
Pricing -->|"Start trial"| Signup
Docs --> Signup
Help --> Docs
Signup --> Onboard
Onboard --> Routines
Routines --> Billing
Legacy and redirects
| Old / alternate path | Behavior |
|---|
| autoblocks.pro/login | Redirect to autoblocks.run/login |
| autoblocks.pro/book | Redirect to autoblocks.pro/docs (book a call removed) |
| autoblocks.run/sign-up | Signup alias |
Query parameters (product)
| Route | Param | Effect |
|---|
/routines/new | template={slug} | Pre-select template from catalog |
/routines/new | ai=1 | Open AI-guided creation path |
Template slugs live in packages/template-catalog/src/index.ts (e.g. morning-summary, webhook-forwarder).
Local development URLs
Related reading