Categorygithub.com/henomis/mailqueue-go
module
1.0.0-alpha1
Repository: https://github.com/henomis/mailqueue-go.git
Documentation: pkg.go.dev

# README

๐Ÿ“ค Mailqueue-go

General purpose email queue with REST API interface.

Features

  • ๐Ÿ“Ž Full attachment support (via base64 encoding or filesystem)
  • ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ Full suppor to Cc, Bcc, reply-to fields
  • ๐ŸŒ HTML template engine
  • ๐Ÿ”’ Automatic TLS support
  • โœ‰๏ธ SMTP client limiter

Build

Use Makefile to build bin/mailqueue-go-api and bin/mailqueue-go-watcher.

make

Docker

You can start a complete mailqueue-go stack with docker-compose.

docker-compose up

Env

Put this in your .env file and modify it to your needs.

MONGO_ENDPOINT=mongodb://admin:pass@mongodb:27017
MONGO_DB=test
MONGO_LOG_DB_SIZE=1000000
MONGO_EMAIL_DB_SIZE=1000000
MONGO_TIMEOUT=10
BIND_ADDRESS=:8080
SMTP_ALLOW=10
SMTP_INTERVAL_MINUTE=1
SMTP_SERVER=localhost
SMTP_USERNAME=username@localhost
SMTP_PASSWORD=password
SMTP_FROM=username@localhost
SMTP_FROMNAME=fromname
SMTP_REPLYTO=noreply@localhost
SMTP_ATTEMPTS=3
LOG_OUTPUT=stdout

API

API endpoint prefix is /api/v1.

MethodRouteDescription
GET/logsGet all logs
GET/logs/{email_id}Get logs for email with id {email_id}
GET/emailsGet all emails
GET/emails/{id}Get email with id {id}
POST/emailsEnqueue new email
GET/templatesGet all templates
GET/templates/{id}Get template with id {id}
PUT/templates/{id}Update template with id {id}
POST/templatesCreate new template
DELETE/templates/{id}Delete template with id {id}
GET/images/mail/{service}/{id}Tracking open email

Please refer to this directory for examples.

# Packages

No description provided by the author