Initial commit: Zoho Mail Service v1.0.0

This commit is contained in:
dvs
2026-08-28 10:15:24 +08:00
commit 1a47a42748
4 changed files with 407 additions and 0 deletions
+72
View File
@@ -0,0 +1,72 @@
# ✉️ Zoho Mail Service — SMTP Email Sending API
> A Flask-based email sending service using **Zoho SMTP**, supporting attachments, authentication, and file upload.
**Zoho Mail Service** wraps Zoho SMTP into a simple HTTP API. It provides login authentication, file upload, and email sending (with optional attachments) via a Flask server.
---
## ✨ Features
| Feature | Description |
|---------|-------------|
| 🔐 **Login Auth** | Authenticate before sending emails |
| 📎 **File Upload** | Upload file attachments to the server |
| 📧 **Send Email** | Send email via Zoho SMTP with text + attachments |
| 🔒 **Account Auth** | Hardcoded account validation (edit in config) |
| 🔑 **SMTP TLS** | Zoho SMTP over SSL (port 465) |
---
## 🔌 API Endpoints
### POST `/login`
Authenticate a user.
- **Params**: credentials (username/password)
- **Returns**: authentication result
### POST `/upload`
Upload a file attachment.
- **Params**: file data
- **Returns**: saved file info
### POST `/send`
Send an email.
- **Params**: recipient, subject, body, optional attachment
- **Returns**: send result
---
## 🚀 Quick Start
### Prerequisites
- Python 3.7+
- `flask`
### Configure
Edit the config section in `zoho_mail_service.py`:
```python
SMTP_SERVER = "smtp.zoho.com.cn"
SMTP_PORT = 465
SENDER_EMAIL = "yourname@yourname.com"
EMAIL_PASSWORD = "your-app-password"
```
### Run
```bash
python zoho_mail_service.py
```
---
## 📄 License
Licensed under the **MIT License**. See [LICENSE](LICENSE).
---
## ⚠️ Security Note
> Email credentials are **sensitive** — never commit real passwords. This project is for learning/reference; configure credentials securely in production (e.g., environment variables).