File tree Expand file tree Collapse file tree 2 files changed +30
-1
lines changed
Expand file tree Collapse file tree 2 files changed +30
-1
lines changed Original file line number Diff line number Diff line change 1+ from typing import Annotated
2+
3+ from fastapi import APIRouter , Depends
4+
5+ from app .interfaces .email_service import IEmailService
6+ from app .services .email .email_service import EmailService
7+ from app .services .email .email_service_provider import AmazonSESEmailProvider
8+
9+ router = APIRouter (
10+ prefix = "/email" ,
11+ tags = ["email" ],
12+ )
13+
14+
15+ def get_email_service () -> IEmailService :
16+ email_provider = AmazonSESEmailProvider (aws_access_key = "" , aws_secret_key = "" )
17+ return EmailService (email_provider )
18+
19+
20+ # TODO (Mayank, Nov 30th) - Remove test emails once email service is fully implemented
21+ @router .post ("/send-test-email/" )
22+ async def send_welcome_email (
23+ recipient : str ,
24+ user_name : str ,
25+ email_service : Annotated [IEmailService , Depends (get_email_service )],
26+ ):
27+ email_service .send_welcome_email (recipient , user_name )
28+ return {"message" : f"Welcome email sent to { user_name } !" }
Original file line number Diff line number Diff line change 22from contextlib import asynccontextmanager
33from typing import Union
44
5+ from backend .app .routes import send_email
56from dotenv import load_dotenv
67from fastapi import FastAPI
78
9+
810from app .routes import email_test
911
1012load_dotenv ()
@@ -31,7 +33,6 @@ async def lifespan(_: FastAPI):
3133# running-alembic-migrations-on-fastapi-startup
3234app = FastAPI (lifespan = lifespan )
3335app .include_router (user .router )
34-
3536app .include_router (email_test .router )
3637
3738
You can’t perform that action at this time.
0 commit comments