Skip to content

Lists & recipients

Alexandre Saiz Verdaguer edited this page Apr 23, 2016 · 3 revisions

MoonMail Lists & recipients

Lists & recipients is the MoonMail service that handles the management of lists & recipients.

Features

  • CRUD operations on lists
  • CRUD operations on recipients
  • Subscribe/Unsubscribe list services
  • Recipients import service

Dependencies

none

Architecture

This service uses a DynamoDB table for data persistence, and the following lambda functions:

  • lists-create: it creates a list
  • lists-update: it updates a given list
  • lists-read: it fetches all user's lists
  • lists-delete: it marks list as deleted for mini EC2 instance to clean up recipients in recipients DynamoDB table during off peak hours
  • lists-subscribe: it creates a recipient and subscribes it to a list
  • lists-unsubscribe: it marks a recipient as unsubscribed
  • recipients-import: it listens to S3 file created event, parses the uploaded file and stores recipients for a given list.
  • recipients-create: it creates a recipient for a given list
  • recipients-update: it updates a recipient
  • recipients-read: it returns a recipient or list of recipients
  • recipients-delete: it deletes recipient or recipients matching provided conditions

System Messaging

recipients-import service is subscribed to moonmail-recipients-import S3 bucket's s3:ObjectCreated:* event

Clone this wiki locally