22from app import __version__
33import os
44from app .utils .make_meta import make_meta
5-
65from fastapi import APIRouter , Query , Path , Body , HTTPException
7-
86from app .utils .db import get_db_connection
9-
7+ from . utils . send_email import send_email_resend
108
119router = APIRouter ()
1210base_url = os .getenv ("BASE_URL" , "http://localhost:8000" )
@@ -21,6 +19,35 @@ def root() -> dict:
2119 return {"meta" : meta }
2220 meta = make_meta ("success" , "Resend endpoint" )
2321 data = [
24- {"action, " : f "send email" },
22+ {"action" : "send email" },
2523 ]
2624 return {"meta" : meta , "data" : data }
25+
26+
27+ # POST endpoint to send email
28+ from fastapi import status
29+ from pydantic import BaseModel , EmailStr
30+
31+ class EmailRequest (BaseModel ):
32+ to : EmailStr
33+ subject : str
34+ html : str
35+ sender : EmailStr
36+
37+ @router .post ("/resend" , status_code = status .HTTP_202_ACCEPTED )
38+ def send_email (request : EmailRequest ):
39+ """POST /resend endpoint to send email via Resend API."""
40+ if not RESEND_API_KEY :
41+ meta = make_meta ("error" , "RESEND_API_KEY missing. Please set it in your .env file." )
42+ return {"meta" : meta }
43+ result = send_email_resend (
44+ to = request .to ,
45+ subject = request .subject ,
46+ html = request .html ,
47+ sender = request .sender
48+ )
49+ if "error" in result :
50+ meta = make_meta ("error" , result ["error" ])
51+ return {"meta" : meta }
52+ meta = make_meta ("success" , "Email sent successfully." )
53+ return {"meta" : meta , "data" : result }
0 commit comments