Bounce management
This commit is contained in:
@@ -288,3 +288,24 @@ class EmailTemplate(Base):
|
||||
is_active = Column(Boolean, default=True, nullable=False)
|
||||
created_at = Column(DateTime, default=datetime.utcnow, nullable=False)
|
||||
updated_at = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow, nullable=False)
|
||||
|
||||
|
||||
class BounceType(str, enum.Enum):
|
||||
HARD = "hard"
|
||||
SOFT = "soft"
|
||||
COMPLAINT = "complaint"
|
||||
UNSUBSCRIBE = "unsubscribe"
|
||||
|
||||
|
||||
class EmailBounce(Base):
|
||||
__tablename__ = "email_bounces"
|
||||
|
||||
id = Column(Integer, primary_key=True, index=True)
|
||||
email = Column(String(255), nullable=False, index=True)
|
||||
bounce_type = Column(SQLEnum(BounceType), nullable=False)
|
||||
bounce_reason = Column(String(500), nullable=True)
|
||||
smtp2go_message_id = Column(String(255), nullable=True, index=True)
|
||||
bounce_date = Column(DateTime, nullable=False)
|
||||
is_active = Column(Boolean, default=True, nullable=False)
|
||||
created_at = Column(DateTime, default=datetime.utcnow, nullable=False)
|
||||
updated_at = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow, nullable=False)
|
||||
|
||||
Reference in New Issue
Block a user