Alphabet is a production-oriented .NET 10 Web API solution template that gives you a fully working, deployable backend from the firstDocumentation Index
Fetch the complete documentation index at: https://alphabet-06152314.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
dotnet run. It combines Clean Architecture, vertical slices, and CQRS with a set of pre-built modules — identity and auth, privilege-based access control, a job scheduler, multi-channel messaging, and a product catalog — so you can build your own features on a stable, tested foundation without re-implementing the plumbing.
Quickstart
Run the API, create an account, and make your first authenticated request in under 5 minutes.
Authentication
Learn how JWT tokens, refresh flows, MFA, and cookie-based auth work.
Access Control
Manage privileges, roles, and composite policies with the PBAC module.
Scheduler
Create, monitor, and retry background jobs with the Hangfire-backed scheduler.
Communications
Send email, SMS, push, in-app, and webhook notifications through one API.
Login endpoint
API reference for
POST /api/v1/auth/login.What’s included
Alphabet ships five modules, each self-contained with its own domain, application, and API layers.| Module | Description |
|---|---|
| Identity | User registration, email confirmation, login, token refresh, MFA (TOTP + OTP), password reset, and account lockout. Backed by ASP.NET Core Identity. |
| Privilege | Privilege-based access control (PBAC) alongside standard roles. Manage a privilege catalog, assign privileges to roles or individual users, handle self-service requests, and audit every access decision. |
| Scheduler | Dynamic job creation, rescheduling, retry policies, and execution history powered by Hangfire. Includes a protected dashboard at /hangfire and a REST API at /api/v1/scheduler. |
| Communication | Multi-channel outbound messaging over Email, SMS, Push, In-App, and Webhook from a single endpoint. Channel configuration is controlled through appsettings.json. |
| Product | A starter product catalog module demonstrating how to structure your own domain features using the same vertical-slice pattern. |
Architecture at a glance
Alphabet follows Clean Architecture with vertical slices organized by feature inside each module. From your perspective as an API consumer, this means:- Stable contracts. Request and response shapes are versioned through the API version prefix (
/api/v1/...). Breaking changes require a new API version, so your integration code does not break on minor updates. - Consistent error format. All errors return Problem Details payloads, so your error-handling code works the same way across every endpoint.
- Validation before execution. Requests are validated before any handler executes, so invalid inputs are rejected with a
400before touching the database. - Predictable auth. Every protected endpoint uses the same JWT bearer scheme. Pass an
Authorization: Bearer <token>header and you’re in.
Swagger is available at
https://localhost:5001/swagger when running in development mode. Every endpoint includes summary and description metadata, so you can explore and test the API directly in the browser.