• Documentation
  • API Reference
  • REST API & UIs
Show / Hide Table of Contents
  • Introduction
  • Features
  • Persistence
    • Redis
    • Minio
  • SMTP
    • Basics
    • Authentication

MailHole documentation

Features

  • Keep mails for a specified time or until they are deleted
  • Store whole mail including headers, text and HTML body
  • Store mail attachements including some file hashes (planned are MD5, SHA1 and SHA256)
  • Dashboard to browse all the received mails, attachements and so on
  • Dashboard to have a look at the processing queue
  • Dashboard to get some metrics of the service like how many mails were received, ...
  • API to check if an attachement was transmitted correctly by passing a prebuilt hash to API or by fetching the attachement details including its hashes
  • Optional authentication at the SMTP server for further tests

Architecture

Application parts

  • MailHole.SmtpListener - Service which receives mails and stores them for further processing
  • MailHole.Api - WebAPI project to access receiver and attachement informations and statistics

External tools and frameworks

  • Redis - used to store all metadata and text parts of the mails
  • Minio - Amazon S3 replacement to store all attachements
  • Traefik - API Gateway and load balancer used to serve a consistent API
  • Hangfire - used to delete mails after specific time and for asynchronous processing of incoming mails
  • App-Metrics - used to collect performance indicators and health state of the custom components
  • Improve this Doc
Back to top Copyright © 2015-2017 Microsoft
Generated by DocFX