https://github.com/veeso-dev/sesamo
Web service to send email with Amazon SES
https://github.com/veeso-dev/sesamo
aws-ses aws-ses-mailer rust-lang
Last synced: about 1 month ago
JSON representation
Web service to send email with Amazon SES
- Host: GitHub
- URL: https://github.com/veeso-dev/sesamo
- Owner: veeso-dev
- License: mit
- Created: 2023-09-28T15:39:54.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-08-16T09:44:55.000Z (about 1 year ago)
- Last Synced: 2024-08-16T10:52:44.725Z (about 1 year ago)
- Topics: aws-ses, aws-ses-mailer, rust-lang
- Language: Rust
- Homepage:
- Size: 91.8 KB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# sesamo
Developed by @veeso
Current version: 0.2.1 (16/08/2024)
---
- [sesamo](#sesamo)
- [About sesamo](#about-sesamo)
- [Get started](#get-started)
- [Setup env](#setup-env)
- [Setup AWS credentials](#setup-aws-credentials)
- [Run with Cargo make](#run-with-cargo-make)
- [sesamo API](#sesamo-api)
- [Check](#check)
- [Send](#send)
- [Changelog](#changelog)
- [License](#license)---
## About sesamo
sesamo is a Rust web service which exposes an endpoint to send custom email to custom recipients.
---
## Get started
### Setup env
```sh
cp .env.test .env
vim .env
``````env
EMAIL_SENDER=EMAIL_ADDRESS_CONFIGURED_TO_AWS_SES
LISTEN_URL=127.0.0.1:3001
PIDFILE=/var/run/sesamo.pid
```### Setup AWS credentials
AWS credentials must be configured with aws-cli with `aws configure`.
Credentials are then automatically loaded from defined profile### Run with Cargo make
```sh
cargo make -p production run
```## sesamo API
### Check
Check web service status:
```txt
GET /check
```Response: Empty (200)
### Send
Send email to recipients with provided subject and body.
The body must be a BASE64 encoded HTML.
```txt
POST /send
```Body:
```json
{
"recipients": ["test@test.com", "foo@bar.com"],
"subject": "email subject",
"body": "BODY BASE64 ENCODED"
}
```Response: Empty (200)
---
## Changelog
View sesamo's changelog [HERE](CHANGELOG.md)
---
## License
sesamo is licensed under the MIT license.
You can read the entire license [HERE](LICENSE)