pounce/backend/app/api/__init__.py
yves.gugger 6b6ec01484 feat: Add missing features - Stripe payments, password reset, rate limiting, contact form, newsletter
Backend:
- Add Stripe API endpoints (checkout, portal, webhook) in subscription.py
- Add password reset (forgot-password, reset-password) in auth.py
- Add email verification endpoints
- Add rate limiting with slowapi
- Add contact form and newsletter API (contact.py)
- Add webhook endpoint for Stripe (webhooks.py)
- Add NewsletterSubscriber model
- Extend User model with password reset and email verification tokens
- Extend email_service with new templates (password reset, verification, contact, newsletter)
- Update env.example with all new environment variables

Frontend:
- Add /forgot-password page
- Add /reset-password page with token handling
- Add /verify-email page with auto-verification
- Add forgot password link to login page
- Connect contact form to API
- Add API methods for all new endpoints

Documentation:
- Update README with new API endpoints
- Update environment variables documentation
- Update pages overview
2025-12-08 14:37:42 +01:00

34 lines
1.5 KiB
Python

"""API routers."""
from fastapi import APIRouter
from app.api.auth import router as auth_router
from app.api.domains import router as domains_router
from app.api.check import router as check_router
from app.api.subscription import router as subscription_router
from app.api.admin import router as admin_router
from app.api.tld_prices import router as tld_prices_router
from app.api.portfolio import router as portfolio_router
from app.api.auctions import router as auctions_router
from app.api.webhooks import router as webhooks_router
from app.api.contact import router as contact_router
api_router = APIRouter()
# Core API endpoints
api_router.include_router(auth_router, prefix="/auth", tags=["Authentication"])
api_router.include_router(check_router, prefix="/check", tags=["Domain Check"])
api_router.include_router(domains_router, prefix="/domains", tags=["Domain Management"])
api_router.include_router(subscription_router, prefix="/subscription", tags=["Subscription"])
api_router.include_router(tld_prices_router, prefix="/tld-prices", tags=["TLD Prices"])
api_router.include_router(portfolio_router, prefix="/portfolio", tags=["Portfolio"])
api_router.include_router(auctions_router, prefix="/auctions", tags=["Smart Pounce - Auctions"])
# Support & Communication
api_router.include_router(contact_router, prefix="/contact", tags=["Contact & Newsletter"])
# Webhooks (external service callbacks)
api_router.include_router(webhooks_router, prefix="/webhooks", tags=["Webhooks"])
# Admin endpoints
api_router.include_router(admin_router, prefix="/admin", tags=["Admin"])