# fastapi-mail **Repository Path**: YeLangTu/fastapi-mail ## Basic Information - **Project Name**: fastapi-mail - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-04-16 - **Last Updated**: 2022-02-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Fastapi-mail The fastapi-mail simple lightweight mail system, sending emails and attachments(individual && bulk) [![MIT licensed](https://img.shields.io/github/license/sabuhish/fastapi-mail)](https://raw.githubusercontent.com/sabuhish/fastapi-mail/master/LICENSE) [![GitHub stars](https://img.shields.io/github/stars/sabuhish/fastapi-mail.svg)](https://github.com/sabuhish/fastapi-mail/stargazers) [![GitHub forks](https://img.shields.io/github/forks/sabuhish/fastapi-mail.svg)](https://github.com/sabuhish/fastapi-mail/network) [![GitHub issues](https://img.shields.io/github/issues-raw/sabuhish/fastapi-mail)](https://github.com/sabuhish/fastapi-mail/issues) [![Downloads](https://pepy.tech/badge/fastapi-mail)](https://pepy.tech/project/fastapi-mail) ### πŸ”¨ Installation ### ```sh $ pip install fastapi-mail ``` --- **Documentation**: [FastApi-MAIL](https://sabuhish.github.io/fastapi-mail/) --- The key features are: - sending emails with either with FastApi or using asyncio module - sending emails using FastApi background task managment - sending files either from form-data or files from server - Using Jinja2 HTML Templates - email utils (utility allows you to check temporary email addresses, you can block any email or domain) - email utils has two available classes ```DefaultChecker``` and ```WhoIsXmlApi``` - Unittests using FastapiMail More information on [Getting-Started](https://sabuhish.github.io/fastapi-mail/getting-started/) ### Guide ```python from fastapi import FastAPI, BackgroundTasks, UploadFile, File, Form from starlette.responses import JSONResponse from starlette.requests import Request from fastapi_mail import FastMail, MessageSchema,ConnectionConfig from pydantic import BaseModel, EmailStr from typing import List class EmailSchema(BaseModel): email: List[EmailStr] conf = ConnectionConfig( MAIL_USERNAME = "YourUsername", MAIL_PASSWORD = "strong_password", MAIL_FROM = "your@email.com", MAIL_PORT = 587, MAIL_SERVER = "your mail server", MAIL_TLS = True, MAIL_SSL = False, USE_CREDENTIALS = True, VALIDATE_CERTS = True ) app = FastAPI() html = """

Thanks for using Fastapi-mail

""" @app.post("/email") async def simple_send(email: EmailSchema) -> JSONResponse: message = MessageSchema( subject="Fastapi-Mail module", recipients=email.dict().get("email"), # List of recipients, as many as you can pass body=html, subtype="html" ) fm = FastMail(conf) await fm.send_message(message) return JSONResponse(status_code=200, content={"message": "email has been sent"}) ``` ## List of Examples For more examples of using fastapi-mail please check [example](https://sabuhish.github.io/fastapi-mail/example/) section # Contributing Feel free to open issues and send pull requests. ## Contributors ✨ Thanks goes to these wonderful people ([🚧](https://sabuhish.github.io/fastapi-mail/example.html)):
🚧
🚧

Sabuhi Shukurov

πŸ’¬ πŸ‘€ 🚧

Tural Muradov

πŸ“– πŸ‘€ πŸ”§

Hasan Aliyev

πŸ“– 🚧 πŸ‘€

Ashwani

🚧

Leon Xu

🚧

Gabriel Oliveira

πŸ“– 🚧

Onothoja Marho

πŸ“– 🚧 πŸ”§

Tim Kiely

🚧

Dmitriy Solodkiy

🚧

Peter Boers

🚧

James Valentine

πŸ“– 🚧 πŸ”§

Gogoku

πŸ“– 🚧 πŸ”§

Kucera-Lukas

πŸ“– 🚧 πŸ”§

LLYX

πŸ“– 🚧 πŸ”§

floodpants

🚧

AndrΓ© Felipe Dias

πŸ“– πŸ‘€ πŸ”§

Wojtek Jurkowlaniec

πŸ“– πŸ‘€ πŸ”§
This project follows the [all-contributors](https://allcontributors.org) specification. Contributions of any kind are welcome! Before you start please read [CONTRIBUTING](https://github.com/sabuhish/fastapi-mail/blob/master/CONTRIBUTING.md) ## LICENSE [MIT](LICENSE)