Skip to content

feat: add email unsubscribe management#685

Merged
RUKAYAT-CODER merged 5 commits into
rinafcode:mainfrom
Nimatstar:feat/email-unsubscribe-management
May 29, 2026
Merged

feat: add email unsubscribe management#685
RUKAYAT-CODER merged 5 commits into
rinafcode:mainfrom
Nimatstar:feat/email-unsubscribe-management

Conversation

@Nimatstar
Copy link
Copy Markdown
Contributor

Summary

Implements email unsubscribe management for compliance, including one-click unsubscribe, preference centre, and resubscribe mechanism.

Changes

  • src/email-unsubscribe/entities/unsubscribe-token.entity.ts - Token entity with expiry and single-use enforcement
  • src/email-unsubscribe/dto/unsubscribe.dto.ts - DTOs for unsubscribe, resubscribe, and preference update
  • src/email-unsubscribe/email-unsubscribe.service.ts - Service: token generation, one-click unsubscribe, resubscribe, preference management, status lookup
  • src/email-unsubscribe/email-unsubscribe.controller.ts - REST endpoints: POST /email-unsubscribe/unsubscribe, POST /email-unsubscribe/resubscribe, POST /email-unsubscribe/preferences, GET /email-unsubscribe/status/:email
  • src/email-unsubscribe/email-unsubscribe.module.ts - Module wiring

Acceptance Criteria

  • Unsubscribe link in all emails (token generation via generateUnsubscribeToken)
  • One-click unsubscribe (POST /email-unsubscribe/unsubscribe)
  • Preference center for email types (POST /email-unsubscribe/preferences)
  • Resubscribe mechanism (POST /email-unsubscribe/resubscribe)

closes #589

@drips-wave
Copy link
Copy Markdown

drips-wave Bot commented May 29, 2026

@Nimatstar Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@RUKAYAT-CODER RUKAYAT-CODER merged commit 3e54624 into rinafcode:main May 29, 2026
6 of 12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add email unsubscribe management

2 participants